【问题标题】:How to set data of MPAndroidChart LineChart with an ArrayList of Ints?如何使用 Ints 的 ArrayList 设置 MPAndroidChart LineChart 的数据?
【发布时间】:2020-09-13 12:59:05
【问题描述】:

我有一个整数数组列表,我想在我的 MPAndroidChart LineChart 中使用它。但是,我是 Java 新手,不知道如何将其转换为所需的“条目”数据类型。你能帮帮我吗?

我尝试了以下方法:

ArrayList<int[]> data2line= new ArrayList<>(Arrays.asList(data));

LineDataSet lineDataSet1 = new LineDataSet(data2line,"Data Set 1");
ArrayList<ILineDataSet> dataSets = new ArrayList<>();
dataSets.add(lineDataSet1);

LineData dataLine = new LineData(dataSets);
lineChart.setData(dataLine);

【问题讨论】:

  • 您使用的是 int 数组的 ArrayList,而不是 int

标签: java mpandroidchart


【解决方案1】:

您需要一个条目数组,如下所示:

ArrayList<Entry> entries = new ArrayList<>();
entries.add(new Entry(1, 50));
entries.add(new Entry(2, 100));

【讨论】:

  • 谢谢。但是,我有很多数据(+10,000 个整数),我想知道是否可以避免使用循环来添加您建议的条目以节省性能。你知道这是否可能吗?
  • 您如何存储数据?
  • 我使用一个名为 Chaquopy 的模块将数据从 Python Numpy.array 传输到 Java 并像这样接收它: int[] data2 = py.getModule("main").callAttr("rula_timeline" ).toJava(int[].class);它应该是一个类似 {1, 2, 1, 2, 3, 5, 7} 的列表。我也试过:short[] data2 = py.getModule("main").callAttr("rula_timeline").toJava(short[].class);
  • 你想如何显示 data2 数组的每个值? Entry类需要2个参数,一个为x值,一个为y值
  • 然后只需使用 for 循环:for (int i = 0; i &lt; data2.size; i++) { entries.add(new Entry(i, data2[i])); }
猜你喜欢
  • 2016-03-14
  • 1970-01-01
  • 2015-11-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多