AndroidPlot:XYPlot如何制作带圆角的条形图

时间:2017-11-15 14:39:23

标签: java android androidplot

我正在使用AndroidPlot大约一年时间在我的应用中显示不同的图表。 现在我正在与BarCharts合作,图表已经完成,但我怎样才能使角落四舍五入?

我找到了一些行的结果: How to make line with rounded (smooth) corners with AndroidPlot

我已经尝试过了:

BarFormatter formatter1,formatter2, formatter3;
formatter1.getBorderPaint().setStrokeJoin(Paint.Join.ROUND);
formatter1.getFillPaint().setStrokeJoin(Paint.Join.ROUND);

似乎没有任何影响。

然后我尝试了:

XYPlot plot; //Initialized with UI-Diagrammm above
...
plot.setBorderStyle(XYPlot.BorderStyle.ROUNDED,5f,5f);

是否有人已经遇到问题并得到了如何解决问题的答案。

感谢您的帮助,

弗兰西

1 个答案:

答案 0 :(得分:1)

条形图由Androidplot的BarRenderer类呈现,该类使用Canvas.drawRect(...)方法绘制单个条形图。为了获得圆边,它需要调用Canvas.drawRoundRect或甚至更好,使用Path.lineTo(...)Path.arcTo(...)方法将每个条形绘制为路径,以便只有条形的顶部是圆润。遗憾的是,此功能尚不存在,但您可以根据需要打开功能请求。

或者您可以通过创建扩展BarRenderer并覆盖drawBar(...)的自定义渲染器来自行实现它。 Documentation available here

enter image description here