gpt4 book ai didi

java - aChartEngine - 如何屏蔽条形图?

转载 作者:行者123 更新时间:2023-11-30 03:17:08 27 4
gpt4 key购买 nike

我用aChartEngine 创建了一个条形图。我遇到的问题是,为每个值(包括 0)创建条形。这意味着在值为 0 的地方,它会在相邻条形之间创建一个空间。

我想摆脱那个空间 - 我认为唯一的方法是在它们的值为 0 时删除或隐藏条。我在网上寻找解决方案并尝试了不同的方法 - 比如将条间距设置为 0 - 但到目前为止,我还没有发现任何有效的方法。

这是我的代码:

//DATA 1
int[] y = {5, 0, 8, 13, 0, 16, 8};
CategorySeries series = new CategorySeries("Category 1");
for(int i = 0; i < y.length; i++){
series.add(y[i]);
}

//DATA 2
int[] y2 = {0, 5, 0, 10, 0, 0, 3};
CategorySeries series2 = new CategorySeries("Category 2");
for(int i = 0; i < y2.length; i++){
series2.add(y2[i]);
}

//DATA 3
int[] y3 = {25, 5, 2, 9, 22, 24, 6};
CategorySeries series3 = new CategorySeries("Category 3");
for(int i = 0; i < y3.length; i++){
series3.add(y3[i]);
}

XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
dataset.addSeries(series.toXYSeries());
dataset.addSeries(series2.toXYSeries());
dataset.addSeries(series3.toXYSeries());

XYSeriesRenderer renderer = new XYSeriesRenderer();
renderer.setChartValuesSpacing((float) 10);
renderer.setColor(Color.GREEN);

XYSeriesRenderer renderer2 = new XYSeriesRenderer();
renderer2.setChartValuesSpacing((float) 10);
renderer2.setColor(Color.YELLOW);

XYSeriesRenderer renderer3 = new XYSeriesRenderer();
renderer3.setChartValuesSpacing((float) 10);
renderer3.setColor(Color.BLUE);

XYMultipleSeriesRenderer mRenderer = new XYMultipleSeriesRenderer();
mRenderer.addSeriesRenderer(renderer);
mRenderer.addSeriesRenderer(renderer2);
mRenderer.addSeriesRenderer(renderer3);
mRenderer.setChartTitle("MY GRAPH");
mRenderer.setYTitle("Y AXIS TITLE");
mRenderer.setBarSpacing(0);

mRenderer.setXLabels(1);
mRenderer.setYLabels(12);
mRenderer.setShowGrid(true);

mRenderer.addXTextLabel(1, "col 1");
mRenderer.addXTextLabel(2, "col 2");
mRenderer.addXTextLabel(3, "col 3");
mRenderer.addXTextLabel(4, "col 4");
mRenderer.addXTextLabel(5, "col 5");
mRenderer.addXTextLabel(6, "col 6");
mRenderer.addXTextLabel(7, "col 7");
mRenderer.setFitLegend(true);

Intent intent = ChartFactory.getBarChartIntent(context, dataset, mRenderer, Type.DEFAULT);

谁知道如何只删除或屏蔽某些栏?

提前致谢!

最佳答案

我认为 0 的值仍然是一个值,需要显示。如果您不想显示它,那么可以在您的代码逻辑中跳过它。

另一种可能的解决方案是改用 MathHelper.NULL_VALUE

关于java - aChartEngine - 如何屏蔽条形图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19861628/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com