有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何在GraphView Android中添加特定点?

我想在GraphView上添加如下所示的特定点:

enter image description here

这就是我尝试过的:

GraphView graphView = findViewById(R.id.graph_view);
graphView.getGridLabelRenderer().setNumVerticalLabels(9);
graphView.getGridLabelRenderer().setNumHorizontalLabels(9);
PointsGraphSeries<DataPoint> series = new PointsGraphSeries<>(new DataPoint[] {
        new DataPoint(-9, 9),
        new DataPoint(-9, 0),
        new DataPoint(-9, -9),
        new DataPoint(0, 9),
        new DataPoint(0, 0),
        new DataPoint(0, -9),
        new DataPoint(9, 9),
        new DataPoint(9, 0),
        new DataPoint(9, -9)
});
graphView.addSeries(series);
series.setShape(PointsGraphSeries.Shape.POINT);

结果如下:

enter image description here

这与我想要实现的目标无关。这些点与上面的位置不一样。如何解决这个问题


共 (1) 个答案

  1. # 1 楼答案

    底部图像中的点看起来与第一张图像中的点不完全相同,这是因为您看到的是两个不同的图形:

    你的两张图片都是由这两样东西组成的:
    x轴(每个水平点)和y轴(每个垂直点)

    tl;dr - your 2 images have different Graph scales and it is giving you the illusion of misplaced points.

    现在-在两张图像中,你有相同的点,但主要区别在于,第一张图针对每个整数(x轴和y轴)进行缩放,第二张图针对每个第二个整数进行缩放(例如x轴-6-4-2 0 4 6)

    以(0,9)点为例-在第一张图像中您可以清楚地看到x轴上的0和y轴上的9,并确保这是您的点
    在你的第二张图片中(对于完全相同的点)-你可以清楚地看到x轴上的0,y轴上也有9-你只需要注意它在8以上,在10以下(所以它在9上,我们毕竟在两张图片上讨论的是相同的点)