我用AchartEngine来显示Barchart.在我的图表栏中,颜色也可见0值.我已经检查过如下..但它将所有值设置为透明.我想将条形颜色设置为大于0的值.
CategorySeries series = new CategorySeries(""); for (int i = 0; i < y_onemonth.length; i++) { series.add("Bar" + (i + 1),y_onemonth[i]); } XYMultipleSeriesDataset dataSet = new XYMultipleSeriesDataset(); dataSet.addSeries(series.toXYSeries()); // number of series // customization of the chart XYSeriesRenderer renderer = new XYSeriesRenderer(); for (int i = 0; i < y_onemonth.length; i++) { if(y_onemonth[i]==0) { renderer.setColor(Color.TRANSPARENT); } else { renderer.setColor(Color.RED); } }
更新:
我提到你改变了我的代码,但得到这样的图表.我有一个月19日的价值,但它不可见.
解决方法
我已成功用MathHelper.NULL_VALUE替换0值.您可以找到该类
here的文档.
编辑:填写数据系列时,您可以尝试这样的事情:
for (int i = 0; i < y_onemonth.length; i++) { double doubleValue = MathHelper.NULL_VALUE; if (y_onemonth[i] != 0){ doubleValue = y_onemonth[i]; } series.add("Bar" + (i + 1),doubleValue); }
希望这会有所帮助;-)