我在我的项目中使用 Achart Engine ,它运行正常。但是,我看到,当我只有一个系列时,条形变薄并且不好,但是如果我们有多个系列就可以了,我已查看了源代码,我在
中看到了drawSeries method they are calling getHalfDiffX(points, length, seriesNr);
并且该方法实现如下:
protected float getHalfDiffX(List<Float> points, int length, int seriesNr) {
int div = length;
if (length > 2) {
div = length - 2;
}
float halfDiffX= (points.get(length - 2) - points.get(0)) / div;
if (halfDiffX == 0) {
halfDiffX = 10;
}
if (mType != Type.STACKED) {
halfDiffX /= seriesNr;
}
return (float) (halfDiffX / (getCoeficient() * (1 + mRenderer.getBarSpacing())));
}
这是因为这句话:
if (halfDiffX == 0) {
halfDiffX = 10;
}
如何解决这个问题?我试图发布我的问题here。
答案 0 :(得分:4)
我在setBarWidth()
中添加了一个新的XYMultipleSeriesRenderer
,例如您现在可以为这些条设置一个以像素为单位的恒定宽度。
renderer.setBarWidth(100);
您可以下载包含此功能的版本here。