AChartEngine应用之BarChart(柱形图)
接着上文,构建柱形图的步骤和构建饼图的步骤一样,主要分为以下三步,还需要在项目中引入AChartEngine依赖jar包,在Manifest中添加:<activityandroid:name="org.achartengine.GraphicalActivity" />
1. 设置XYMultipleSeriesRenderer主要描绘器
XYMultipleSeriesRenderer renderer = buildBarRenderer(colors);// 柱形图颜色设置 setChartSettings(renderer, "柱形图示例", "月份", "数量", 0.5, 12.5, 0, 2400, Color.GRAY, Color.LTGRAY);// 设置柱形图标题,横轴(X轴)、纵轴(Y轴)、最小的伸所刻度、最大的伸所刻度 renderer.getSeriesRendererAt(0).setDisplayChartValues(true);// 在第0条柱形图上显示数据 renderer.getSeriesRendererAt(1).setDisplayChartValues(true);// 在第1条柱形图上显示数据 renderer.setXLabels(12); renderer.setYLabels(10); renderer.setXLabelsAlign(Align.LEFT);// 数据从左到右显示 renderer.setYLabelsAlign(Align.LEFT); renderer.setPanEnabled(true, false); renderer.setZoomEnabled(true); renderer.setZoomButtonsVisible(true);// 显示放大缩小功能按钮 renderer.setZoomRate(1.1f); renderer.setBarSpacing(0.5f);// 柱形图间隔 |
2. 构建数据源XYMultipleSeriesDataset
protected XYMultipleSeriesDataset buildBarDataset(String[] titles, List<double[]> values) {//柱形图的数据源和饼图差不多,也是由一些键值对组成 XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset(); int length = titles.length; for (int i = 0; i < length; i++) { CategorySeries series = new CategorySeries(titles[i]); double[] v = values.get(i); int seriesLength = v.length; for (int k = 0; k < seriesLength; k++) { |