我正在尝试实现允许根据Y值更改线条颜色的功能。
找到了这个example,但不幸的是,这无效。似乎根据数据系列的第一个Y值设置了色线。我尝试修改LineAndPointFormatter
和LineAndPointRenderer
并收到了类似的结果。我还尝试将setShader设置为具有绘图范围的线:
LineAndPointFormatter lineFormatter = new LineAndPointFormatter(Color.rgb(154, 223, 130), null, null, null);
RectRegion bounds = plot.getBounds();
float minY = bounds.getMinY().floatValue();
float maxY = bounds.getMaxY().floatValue();
lineFormatter.getLinePaint().setShader(new LinearGradient(
0, maxY, 0, minY,
Color.RED,
Color.BLUE,
Shader.TileMode.REPEAT));
但是看起来最初未设置minY和maxY且它们的值是如此之小,所以我收到了紫色线条(红色和蓝色混合)。
当我尝试手动创建RectRegion rectum = new RectRegion(0, Double.POSITIVE_INFINITY, 0, 1000;
来设置范围时,我终于收到了一点东西(我的图表最大Y值为100,idk为什么,但仅当我将其设置为1000时才起作用),但它仍然没有响应在Y轴上显示的是什么。
有人找到多色线的简单解决方案吗?像动态渐变一样?