我正在使用该Androidplot
库绘制条形图以显示某些内容。我的值的范围是-40 到 +40。
如何将条形图绘制到负面?我只想将零在中间的 y 轴上居中,如果值是负值,则条应该向上或向下增长。我的酒吧从下限向上增长。它应该如下所示:
我正在使用该Androidplot
库绘制条形图以显示某些内容。我的值的范围是-40 到 +40。
如何将条形图绘制到负面?我只想将零在中间的 y 轴上居中,如果值是负值,则条应该向上或向下增长。我的酒吧从下限向上增长。它应该如下所示:
最近在 Androidplot 0.6.2中添加了负条支持;您需要使用最新的开发版本来获取它(它非常稳定)。
一旦您拥有正确版本的 Androidplot,您就可以使用 Maria Reina 的建议来启用负值显示。这是我在下面的屏幕截图中的操作方式:
plot.setUserRangeOrigin(0);
plot.setRangeBoundaries(0, BoundaryMode.AUTO, 0,BoundaryMode.AUTO);
注意:目前存在一个错误,如果您使用具有 2 个或更多系列的叠加模式并且有负条,则负条的叠加顺序会颠倒,导致条组中较小的负值被较大的负值遮挡。如果您的目标只是重现上面的图像,那么您应该没问题。
这对我行得通:
plot.centerOnRangeOrigin(0);
plot.setRangeLowerBoundary(0,BoundaryMode.AUTO);
其中 plot 是 XYPlot 的一个实例。
这是一个很好的问题。我认为当前版本的 AndroidPlot (0.6.0) 没有办法做到这一点,只有一系列值。我在我的项目中创建了一个解决方法。我知道这并不完美,但它确实有效:创建两个重叠的系列,一个是绿色的,一个是背景色的。假设您有要绘制的 currentValue..
if (currentValue>=0) {
greenRes[i] = Float.valueOf(currentValue);
coverRes[i] = Float.valueOf(0);
}
else {
greenRes[i] = Float.valueOf(0);
coverRes[i] = Float.valueOf(currentValue);
}
这样,您始终可以看到从零轴开始向上或向下的绿色条。