achartengine之折线图---简单用法

同样是一个渲染器,一个数据集,不过和饼图的还是有区别的,渲染器和数据集的对象都不一样,如下:

[java]  view plain copy
  1. //折线图  
  2.     public void lineView(){  
  3.         //同样是需要数据dataset和视图渲染器renderer  
  4.         XYMultipleSeriesDataset mDataset = new XYMultipleSeriesDataset();  
  5.         XYSeries  series = new XYSeries("第一条线");  
  6.         series.add(16);  
  7.         series.add(25);  
  8.         series.add(37);  
  9.         series.add(44);  
  10.         mDataset.addSeries(series);  
  11.         XYSeries  seriesTwo = new XYSeries("第二条线");  
  12.         seriesTwo.add(14);  
  13.         seriesTwo.add(26);  
  14.         seriesTwo.add(33);  
  15.         seriesTwo.add(47);  
  16.         mDataset.addSeries(seriesTwo);  
  17.           
  18.           
  19.         XYMultipleSeriesRenderer mRenderer = new XYMultipleSeriesRenderer();  
  20.         //设置图表的X轴的当前方向  
  21.         mRenderer.setOrientation(XYMultipleSeriesRenderer.Orientation.HORIZONTAL);  
  22.         mRenderer.setXTitle("日期");//设置为X轴的标题  
  23.         mRenderer.setYTitle("价格");//设置y轴的标题  
  24.         mRenderer.setAxisTitleTextSize(20);//设置轴标题文本大小  
  25.         mRenderer.setChartTitle("价格走势图");//设置图表标题  
  26.         mRenderer.setChartTitleTextSize(30);//设置图表标题文字的大小  
  27.         mRenderer.setLabelsTextSize(18);//设置标签的文字大小  
  28.         mRenderer.setLegendTextSize(20);//设置图例文本大小  
  29.         mRenderer.setPointSize(10f);//设置点的大小  
  30.         mRenderer.setYAxisMin(0);//设置y轴最小值是0  
  31.         mRenderer.setYAxisMax(15);  
  32.         mRenderer.setYLabels(10);//设置Y轴刻度个数(貌似不太准确)  
  33.         mRenderer.setXAxisMax(5);  
  34.         mRenderer.setShowGrid(true);//显示网格  
  35.         //将x标签栏目显示如:1,2,3,4替换为显示1月,2月,3月,4月  
  36.         mRenderer.addXTextLabel(1"1月");  
  37.         mRenderer.addXTextLabel(2"2月");  
  38.         mRenderer.addXTextLabel(3"3月");  
  39.         mRenderer.addXTextLabel(4"4月");  
  40.         mRenderer.setXLabels(0);//设置只显示如1月,2月等替换后的东西,不显示1,2,3等  
  41.         mRenderer.setMargins(new int[] { 20301520 });//设置视图位置  
  42.         
  43.         XYSeriesRenderer r = new XYSeriesRenderer();//(类似于一条线对象)  
  44.         r.setColor(Color.BLUE);//设置颜色  
  45.         r.setPointStyle(PointStyle.CIRCLE);//设置点的样式  
  46.         r.setFillPoints(true);//填充点(显示的点是空心还是实心)  
  47.         r.setDisplayChartValues(true);//将点的值显示出来  
  48.         r.setChartValuesSpacing(10);//显示的点的值与图的距离  
  49.         r.setChartValuesTextSize(25);//点的值的文字大小  
  50.           
  51.       //  r.setFillBelowLine(true);//是否填充折线图的下方  
  52.       //  r.setFillBelowLineColor(Color.GREEN);//填充的颜色,如果不设置就默认与线的颜色一致  
  53.         r.setLineWidth(3);//设置线宽  
  54.         mRenderer.addSeriesRenderer(r);  
  55.           
  56.           
  57.         XYSeriesRenderer rTwo = new XYSeriesRenderer();//(类似于一条线对象)  
  58.         rTwo.setColor(Color.GRAY);//设置颜色  
  59.         rTwo.setPointStyle(PointStyle.CIRCLE);//设置点的样式  
  60.         rTwo.setFillPoints(true);//填充点(显示的点是空心还是实心)  
  61.         rTwo.setDisplayChartValues(true);//将点的值显示出来  
  62.         rTwo.setChartValuesSpacing(10);//显示的点的值与图的距离  
  63.         rTwo.setChartValuesTextSize(25);//点的值的文字大小  
  64.           
  65.       //  rTwo.setFillBelowLine(true);//是否填充折线图的下方  
  66.       //  rTwo.setFillBelowLineColor(Color.GREEN);//填充的颜色,如果不设置就默认与线的颜色一致  
  67.         rTwo.setLineWidth(3);//设置线宽  
  68.          
  69.         mRenderer.addSeriesRenderer(rTwo);  
  70.           
  71.           
  72.           
  73.         GraphicalView  view = ChartFactory.getLineChartView(this, mDataset, mRenderer);  
  74.         view.setBackgroundColor(Color.BLACK);  
  75.         setContentView(view);  


 

OK同样在onCreate方法中直接调用即可

 

[java]  view plain copy
  1. protected void onCreate(Bundle savedInstanceState) {  
  2.     super.onCreate(savedInstanceState);  
  3.     setContentView(R.layout.activity_activity_01);  
  4.     //pieView();  
  5.     lineView();  
  6. }  


 

[java]  view plain copy
  1. 同样很多地方应该抽取出来,作为公用的方法重复使用,比如,每一条折线的属性设置等等  

 

注:

其中“价格图走势”是“图表标题”

“价格,日期”是“轴标题”

“0,2,4,6”等Y轴上的数字和X轴的“1月,2月”等是“标签文字”

下面的“第一条线,第二条线”是“图例文本”


 

  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值