import org.achartengine.ChartFactory;
import org.achartengine.chart.BarChart;
import org.achartengine.chart.LineChart;
import org.achartengine.chart.PointStyle;
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;
public class TestChart extends Activity
{

@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);

setContentView(getPriceChart());

}

private View getPriceChart(){
     // 1, 构造显示用渲染图
        XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer();
        //设置横纵坐标标题
        renderer.setXTitle("时间");   
        renderer.setYTitle("");
        //设置坐标轴标题大小
        renderer.setAxisTitleTextSize(12);
        //设置点的大小
        renderer.setPointSize(4);
        
        renderer.setYAxisMin(0);
        renderer.setXAxisMin(0);
        renderer.setXAxisMax(100);
        renderer.setYAxisMax(20);
        
        renderer.setZoomButtonsVisible(true);
        renderer.setPanEnabled(true);
        //设置能否滑动坐标轴
        renderer.setXLabels(20);
        renderer.setYLabels(20);
        renderer.setXLabelsAlign(Align.CENTER);//刻度线与刻度标注之间的相对位置关系  
        renderer.setYLabelsAlign(Align.CENTER);//刻度线与刻度标注之间的相对位置关系  
        //显示网格
        renderer.setShowGrid(true);  
        //设置内边界
        renderer.setBarSpacing(4);      
        renderer.setChartTitle("1001-烟台万华");
        renderer.setChartTitleTextSize(18);
        renderer.setZoomRate(1.1f);//放大的倍率  
        // 2,进行显示      
        XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
        
        XYSeries series = new XYSeries("价格" );
        series.add(10, 12.43);
        series.add(20, 10.49);
        series.add(30, 14.43);
        series.add(40, 5.66);
        series.add(50, 18.43);
        series.add(60, 12.43);
        series.add(70, 10.49);
        series.add(80, 14.43);
        series.add(90, 5.66);
        series.add(100, 18.43);
        dataset.addSeries(series);
        
        
        XYSeries series2 = new XYSeries("平均值" );
        series2.add(10,12.32);
        series2.add(20,11.23);
        series2.add(30, 13.87);
        series2.add(40, 9.54);
        series2.add(50,12.32);
        series2.add(60,12.32);
        series2.add(70,11.23);
        series2.add(80, 13.87);
        series2.add(90, 9.54);
        series2.add(100,12.32);
        dataset.addSeries(series2);
        
        XYSeries series3 = new XYSeries("数量" );
        series3.add(10,10);
        series3.add(20,4);
        series3.add(30, 12);
        series3.add(40, 2);
        series3.add(50,16);
        series3.add(60,10);
        series3.add(70,4);
        series3.add(80, 12);
        series3.add(90, 2);
        series3.add(100,16);
        dataset.addSeries(series3);
        
        
        // 3, 对点的绘制进行设置
        XYSeriesRenderer xyRenderer = new XYSeriesRenderer();
        // 3.1设置颜色
        xyRenderer.setColor(Color.BLUE);
        // 3.2设置点的样式
        xyRenderer.setPointStyle(PointStyle.DIAMOND); //菱形    
        xyRenderer.setChartValuesTextSize(10);
        //显示图表的值
        xyRenderer.setDisplayChartValues(true);
        // 3.3, 将要绘制的点添加到坐标绘制中
        renderer.addSeriesRenderer(xyRenderer);
        
        //增加第二条线
        xyRenderer = new XYSeriesRenderer();
        // 3.1设置颜色
        xyRenderer.setColor(Color.WHITE);
        // 3.2设置点的样式
        xyRenderer.setPointStyle(PointStyle.TRIANGLE);     //三角形
        xyRenderer.setChartValuesTextSize(10);        //显示图表的值
        xyRenderer.setDisplayChartValues(true);
        // 3.3, 将要绘制的点添加到坐标绘制中
        renderer.addSeriesRenderer(xyRenderer);
        
      //增加第三条线
        xyRenderer = new XYSeriesRenderer();
        // 3.1设置颜色
        xyRenderer.setColor(Color.YELLOW);
        // 3.2设置点的样式
        xyRenderer.setChartValuesTextSize(10);  
        //显示图表的值
        xyRenderer.setDisplayChartValues(true);
        // 3.3, 将要绘制的点添加到坐标绘制中
        renderer.addSeriesRenderer(xyRenderer);
        
        //设置每个点为实心
        int length = renderer.getSeriesRendererCount();  
        for (int i = 0; i < length - 1; i++) {  
        ((XYSeriesRenderer) renderer.getSeriesRendererAt(i)).setFillPoints(true);//设置图上的点为实心  
        }  
        return ChartFactory.getCombinedXYChartView(getApplicationContext(), dataset, renderer, new String[]{LineChart.TYPE,LineChart.TYPE, BarChart.TYPE});
        
    }

}