在android中,通常我们需要做一些图形报表的应用,下边我们就来试着通过achartengine中做一张报表,效果图如下
样式可以自己调试,首先引入achartengine-1.0.0.jar包,这里就不详细的介绍,我做的是线性表,其他的柱状图,圆盘图都可以做出来,代码方法如下
1 public class DrowActivity extends Activity{ 2 /** Called when the activity is first created. */ 3 @Override 4 protected void onCreate(Bundle savedInstanceState) { 5 // TODO Auto-generated method stub 6 super.onCreate(savedInstanceState); 7 setContentView(R.layout.danju); 8 // 1, 构造显示用渲染图 9 XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer(); 10 renderer.setChartTitle("列表统计");//添加标题 11 renderer.setAxesColor(Color.WHITE);//边框颜色 12 // 2,进行显示 13 XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset(); 14 // 2.1, 构建数据 15 Random r = new Random(); 16 for (int i = 0; i < 2; i++) { 17 XYSeries series = new XYSeries("数据信息" + (i + 1)); 18 // 填充数据 19 for (int k = 0; k < 10; k++) { 20 // 填x,y值 21 series.add(k, 20 + r.nextInt() % 100); 22 } 23 // 需要绘制的点放进dataset中 24 dataset.addSeries(series); 25 } 26 // 3, 对点的绘制进行设置 27 XYSeriesRenderer xyRenderer = new XYSeriesRenderer(); 28 // 3.1设置颜色 29 xyRenderer.setColor(Color.CYAN); 30 // 3.2设置点的样式 31 xyRenderer.setPointStyle(PointStyle.SQUARE); 32 // 3.3, 将要绘制的点添加到坐标绘制中 33 renderer.addSeriesRenderer(xyRenderer); 34 // 3.4,重复 1~3的步骤绘制第二个系列点 35 xyRenderer = new XYSeriesRenderer(); 36 xyRenderer.setColor(Color.WHITE); 37 xyRenderer.setPointStyle(PointStyle.CIRCLE); 38 renderer.addSeriesRenderer(xyRenderer); 39 //Intent intent = new LinChart().execute(this); 40 Intent intent = ChartFactory.getLineChartIntent(this, dataset, renderer); 41 startActivity(intent); 42 } 43 }
接着就可以看到自己的效果了