AChartEngine条状图
来源:互联网 发布:粒子群算法流程 编辑:程序博客网 时间:2024/04/28 19:23
package com.example.achatdemotest;import org.achartengine.ChartFactory;import org.achartengine.GraphicalView;import org.achartengine.model.SeriesSelection;import org.achartengine.model.XYMultipleSeriesDataset;import org.achartengine.model.XYSeries;import org.achartengine.renderer.XYMultipleSeriesRenderer;import org.achartengine.renderer.XYSeriesRenderer;import android.app.Activity;import android.graphics.Color;import android.graphics.Paint.Align;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.LinearLayout;import android.widget.TextView;import android.widget.Toast;public class TestActivity extends Activity {private TextView tvMsg;private LinearLayout chart;private GraphicalView view;// 前后必须各留一组空白资料, 否则bar会在轴上private String[] Top10ErrCode = { "", "ADFU1", "MBPW2", "ABCDE", "BLFU1","LCVD3", "ADDK1", "CMFU3", "LCCR2", "QBLE1", "SPNS1", "" };private int[] Top10ErrQty = { 0, 19, 17, 10, 15, 11, 18, 7, 15, 2, 0 };@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);tvMsg = (TextView) findViewById(R.id.tvMsg);chart = (LinearLayout) findViewById(R.id.chart);try {GraphicalView view = getBarChart("PQC Top 10 ErrCode","ErrCode","<a href='http://www.it165.net/pro/pkqt/' target='_blank' class='keylink'>QT</a>Y",Top10ErrCode, Top10ErrQty);chart.addView(view);System.out.println("zhege zhi xing le ");} catch (Exception e) {tvMsg.setText(e.toString());}}private GraphicalView getBarChart(String chartTitle, String XTitle,String YTitle, String[] x, int[] y) {XYSeries Series = new XYSeries(YTitle);for (int i = 0; i < y.length; i++) {Series.add(i, y[i]);}XYMultipleSeriesDataset Dataset = new XYMultipleSeriesDataset();Dataset.addSeries(Series);XYMultipleSeriesRenderer Renderer = new XYMultipleSeriesRenderer();Renderer.setChartTitle(chartTitle);Renderer.setChartTitleTextSize(20);Renderer.setXTitle(XTitle);Renderer.setYTitle(YTitle);Renderer.setApplyBackgroundColor(true);Renderer.setBackgroundColor(Color.WHITE);Renderer.setShowGrid(true);Renderer.setXLabelsAlign(Align.CENTER);Renderer.setYLabelsAlign(Align.CENTER);Renderer.setBarSpacing(0.5f);Renderer.setXLabelsAngle(-25); // 设定X轴文字倾斜度Renderer.setXLabels(0); // 设定X轴不显示数字, 改以程式设定文字Renderer.setPanEnabled(true, false);// 允许左右拖动,但不允许上下拖动.Renderer.setClickEnabled(true);// 是否可以点击事件for (int i = 0; i < x.length; i++) {Renderer.addXTextLabel(i, x[i]);}XYSeriesRenderer yRenderer = new XYSeriesRenderer();yRenderer.setColor(Color.GREEN);yRenderer.setDisplayChartValues(true);Renderer.addSeriesRenderer(yRenderer);view = ChartFactory.getBarChartView(getBaseContext(), Dataset,Renderer, org.achartengine.chart.BarChart.Type.DEFAULT);view.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubSeriesSelection seriesSelection = view.getCurrentSeriesAndPoint();if (seriesSelection != null) {Toast.makeText(TestActivity.this,"点击第" + seriesSelection.getPointIndex() + "个点",Toast.LENGTH_SHORT).show();}}});return view;}}
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent"android:orientation="vertical" tools:context=".MainActivity" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="我的图表" android:textColor="@android:color/holo_red_dark" tools:ignore="NewApi" android:id="@+id/tvMsg" /> <LinearLayout android:id="@+id/chart" android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="0dip" android:layout_weight="1"/></LinearLayout>
Dataset和Render参数介绍 :http://blog.csdn.net/lk_blog/article/details/7645661
0 0
- AChartEngine条状图
- echarts 横向条状图
- js编辑条状图(JavaScript)
- js编辑条状图(JavaScript)
- js编辑条状图(JavaScript)
- FusionCharts 2D条状图
- HighCharts之2D条状图
- HighCharts之2D堆条状图
- Flex实现双轴条状图
- [R语言绘图]条状图barplot
- pymatlab之3D条状图
- echarts 横向占比条状图
- echarts 横向圆角条状图
- AChartEngine画折线图
- AChartEngine中线性图
- AChartEngine中气泡图
- AChartEngine中大饼图
- AChartEngine中对比图
- 程序或-内存区域分配(五个段)--终于搞明白了
- Qt中次线程里创建对象,出现Cannot create children for a parent that is in a different thread
- Linux的inode的理解
- 营销型网站策划前如何定位目标客户
- 类目延展代理协议--复习篇
- AChartEngine条状图
- 黑马程序员_JAVA开发前奏
- Quicktime deprecated but it was deleted
- 20141120 N2
- Shell脚本语言与编译型语言的差异
- 递归实现treeview应用的方法
- Qt中采用多线程实现Socket编程
- iOS崩溃、异常---看的想睡觉(待续)
- “浅拷贝”与“深拷贝”