Android aChartEngine使用方法
精选
原创
©著作权归作者所有:来自51CTO博客作者wx58763b21ae3ed的原创作品,请联系作者获取转载授权,否则将追究法律责任
一、下载jar包(http://pan.baidu.com/s/1qYekrHM),解压
里面有三个文件
1)achartengine-1.1.0-demo-source 实例文件
2)achartengine-1.1.0.jar包文件
3)achartengine-1.1.0-javadocs.zip 说明文件
二、如何使用
把achartengine-1.1.0-demo-source导入eclipse
如果不能导入,说明版本不正确,在清单文件里把
<uses-sdk
android:minSdkVersion="4"
android:targetSdkVersion="7" >
</uses-sdk>
改成
<uses-sdk
android:minSdkVersion="11"
android:targetSdkVersion="22" >
</uses-sdk>
project.properties文件
把target=android-8改成target=android-20
三、示例代码,构建饼图
/**
* 饼图
*
* @Project App_achart
* @Package com.android.achar
* @author chenlin
* @version 1.0
* @Date 2013年5月4日
*/
public class PieChartActivity extends Activity {
private double[] values;
private int[] colors;
private DefaultRenderer mRenderer;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
initDatas();
initViews();
}
private void initViews() {
//创建视图
View view = ChartFactory.getPieChartView(this, buildCategorySeries("类别", values), mRenderer);
// 设置背景
view.setBackgroundColor(Color.WHITE);
setContentView(view);
}
private void initDatas() {
values = new double[] { 12, 14, 11, 10, 19 };
colors = new int[] { Color.BLUE, Color.GREEN, Color.MAGENTA, Color.YELLOW, Color.CYAN };
mRenderer = buildCategoryRenderer(colors);
//设置右下角的放大缩小按钮
mRenderer.setZoomButtonsVisible(true);
mRenderer.setZoomEnabled(true);
mRenderer.setChartTitleTextSize(20);
mRenderer.setChartTitle("饼图");
}
/**
* 构建数据
* @param title
* @param values
* @return
*/
private CategorySeries buildCategorySeries(String title, double[] values) {
CategorySeries cc = new CategorySeries(title);
for (int i = 1; i <= values.length; i++) {
cc.add("数据 " + i + " (" + values[i] + ")", values[i]);
}
return cc;
}
private DefaultRenderer buildCategoryRenderer(int[] colors) {
DefaultRenderer renderer = new DefaultRenderer();
renderer.setLabelsTextSize(15);
renderer.setLabelsColor(Color.BLACK);
renderer.setLegendTextSize(15);
renderer.setMargins(new int[] { 20, 30, 15, 0 });
// 构建颜色
for (int i = 0; i < colors.length; i++) {
SimpleSeriesRenderer seriesRenderer = new SimpleSeriesRenderer();
seriesRenderer.setColor(colors[i]);
renderer.addSeriesRenderer(seriesRenderer);
}
return renderer;
}
}