第一步:从工厂里面获取一个饼图对象
GraphicalView graphicalView=ChartFactory.getPieChartView(getBaseContext(), dataset, renderer);//饼状图
第二步:设置dataset数据
double[] values={412.0,542.0,486.0,900.1};
CategorySeries dataset=buildCategoryDataset("测试饼图", values);
protected CategorySeries buildCategoryDataset(String title, double[] values) {
CategorySeries series = new CategorySeries(title);
series.add("差", values[0]);
series.add("不达标", values[1]);
series.add("达标", values[2]);
series.add("优秀",values[3]);
return series;
}
第三步:设置渲染参数
int[] colors={Color.BLUE,Color.GREEN,Color.MAGENTA,Color.RED};
DefaultRenderer renderer=buildCategoryRenderer(colors);
protected DefaultRenderer buildCategoryRenderer(int[] colors) {
DefaultRenderer renderer = new DefaultRenderer();
renderer.setLegendTextSize(20);//设置左下角表注的文字大小
//renderer.setZoomButtonsVisible(true);//设置显示放大缩小按钮
renderer.setZoomEnabled(false);//设置不允许放大缩小.
renderer.setChartTitleTextSize(30);//设置图表标题的文字大小
renderer.setChartTitle("统计结果");//设置图表的标题 默认是居中顶部显示
renderer.setLabelsTextSize(20);//饼图上标记文字的字体大小
//renderer.setLabelsColor(Color.WHITE);//饼图上标记文字的颜色
renderer.setPanEnabled(false);//设置是否可以平移
//renderer.setDisplayValues(true);//是否显示值
renderer.setClickEnabled(true);//设置是否可以被点击
renderer.setMargins(new int[] { 20, 30, 15,0 });
//margins - an array containing the margin size values, in this order: top, left, bottom, right
for (int color : colors) {
SimpleSeriesRenderer r = new SimpleSeriesRenderer();
r.setColor(color);
renderer.addSeriesRenderer(r);
}
return renderer;
}
第四步:将graphicalView对象,放到指定的布局当中
layout=(LinearLayout)findViewById(R.id.linearlayout);
layout.removeAllViews();
layout.setBackgroundColor(Color.BLACK);
layout.addView(graphicalView, new LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。