我正在使用AChartEngine(http://code.google.com/p/achartengine/)库在Android应用中显示饼图。
饼图可以包含许多幻灯片。我只想在一些饼图上显示这些值,但是我无法使其起作用(我什至不确定是否可行)。
对于DefaultRenderer
我来说:
renderer.setLabelsColor(Color.BLACK); // color of the text displayed on the chart
renderer.setLabelsTextSize(12); // size of the text displayed on the chart
并为每个SimpleSeriesRenderer
:
if (pieSlidesNo > 5) {
serieRender.setDisplayChartValues(false);
} else {
serieRender.setDisplayChartValues(true);
}
但不起作用-值显示在每个饼图切片上。我想要的就像下图(值仅显示在第一个切片上,而不是全部显示)。
为此,您必须更改库源。
使变化draw()
的PieChart.java
和使用renderer.setDisplayValues(true);
的DefaultRenderer
if (mRenderer.isDisplayValues()) {
if(angle<60)
{}
else
drawLabel(
canvas,
getLabel(mRenderer.getSeriesRendererAt(i).getChartValuesFormat(), mDataset.getValue(i)),
mRenderer, prevLabelsBounds, mCenterX, mCenterY, shortRadius / 2, longRadius / 2,
currentAngle, angle, left, right, mRenderer.getLabelsColor(), paint, false, true);
}
您可以(angle<60)
根据您的要求更改角度比较值。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句