在 MPAndroidChart 的折线图中绘制科学数据

Graphing scientific data in LineChart from MPAndroidChart

我正在使用 MPAndroidChart 库在我的应用程序中绘制图表(尤其是 LineCharts)。

要使用上述库绘制 LineChart,我们首先需要创建条目和标签,如下所示:

    // Getting LineChart
    LineChart lineChart = (LineChart) rootView.findViewById(R.id.chart);

    // Creating list of entry
    ArrayList<Entry> entries = new ArrayList<>();

    // Creating labels
    ArrayList<String> labels = new ArrayList<String>();

    // Fill entries and lables
    entries.add(new Entry(326.422f, 0));
    entries.add(new Entry(8.36f, 1));
    entries.add(new Entry(6.5f, 2));
    entries.add(new Entry(2.37f, 3));
    entries.add(new Entry(18.13f, 4));
    entries.add(new Entry(9f, 5));

    labels.add("0");
    labels.add("1");
    labels.add("2");
    labels.add("3");
    labels.add("4");
    labels.add("5");

    // Create dataset
    final LineDataSet dataset = new LineDataSet(entries, "Legend description");

    // Create LineData with labels and dataset prepared previously
    LineData data = new LineData(labels, dataset);

    // Set the data and list of labels into chart
    lineChart.setData(data);

好的,这是有效的,但关键是如果我想绘制一组这样的坐标:X = {(35.3, 22.9), (69.39, 27.36), (66.37, 31.697), (58.36, 36.32), (45.336, 38.296), (25.39, 40), (67.396, 43.633)}.

Entry 的构造函数接受一个浮点数作为第一个参数,一个整数作为第二个参数,那么我如何才能将上面的 X 设置为 LineChart

有人会说我可以相应地设置标签,例如第一个标签可以标记为“22.9”,第二个标签可以标记为“27.36”,依此类推...但这在数学上是错误的,因为图表未正确缩放。

在文档中我发现 类 像 EntryBarEntryBubbleEntryCandleEntry 但没有像 LineEntry 这样的东西.

任何人都可以为我指明如何实现这一目标的正确方向吗?

谢谢,

HSB

目前x 轴仅支持整数。因此,原因是 x 轴上的每个字符串都应对应于 y 轴上的值。

这将在库的下一个 release 中更改,其中两个值都将更改为 double

新版本应该会在四月份发布。