安卓开发中的折线图

1:在安卓开发中,利用折线图显示数据。本次利用的是achartengine来绘图,需要将相应的jar包放在libs文件夹下。
2:新建Android Activity 名为ZheXianActivity.java

public class ZheXianActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
//不显示标题
        this.requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.activity_zhe_xian);
//绘图
        lineView();
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.zhe_xian, menu);
        return true;
    }

     public void lineView(){  
            //用来存放数据 
            XYMultipleSeriesDataset mDataset = new XYMultipleSeriesDataset();  
            //原点处显示"使用电数图"
            XYSeries  series = new XYSeries("使用电数图"); 
            //添加点x,y
            series.add(1,2));
            series.add(2,5));
            series.add(3,9));
            series.add(4,2));
            mDataset.addSeries(series);  
           //设置图表渲染器   
            XYMultipleSeriesRenderer mRenderer = new XYMultipleSeriesRenderer();  
            //设置图表的X轴的当前方向  
            mRenderer.setOrientation(XYMultipleSeriesRenderer.Orientation.HORIZONTAL);  
            mRenderer.setXTitle("天数");//设置为X轴的标题  
            mRenderer.setYTitle("电数");//设置y轴的标题  
            mRenderer.setAxisTitleTextSize(40);//设置轴标题文本大小  
            mRenderer.setChartTitle("用电走势图");//设置图表标题  
            mRenderer.setChartTitleTextSize(40);//设置图表标题文字的大小  
            mRenderer.setLabelsTextSize(22);//设置标签的文字大小  
            mRenderer.setLegendTextSize(20);//设置图例文本大小  
            mRenderer.setPointSize(15f);//设置点的大小  
            mRenderer.setYAxisMin(0);//设置y轴最小值是0  
            mRenderer.setYAxisMax(15);  //设置y轴最大值是15
            mRenderer.setYLabels(10);//设置Y轴显示刻度个数  
            mRenderer.setXAxisMax(30);  
            mRenderer.setXAxisMin(0);  
            mRenderer.setXLabels(30);  
            mRenderer.setFitLegend(true);
            mRenderer.setShowGrid(true);//显示网格  
/* //将x标签栏目显示如:1,2,3,4替换为显示1月,2月,3月,4月  
            mRenderer.addXTextLabel(1, "1月");  
            mRenderer.setXLabels(0);//设置只显示如1月,2月等替换后的东西,不显示1,2,3等  
       mRenderer.setMargins(new int[] { 20, 30, 15, 20 });//设置视图位置  
*/              
            XYSeriesRenderer r = new XYSeriesRenderer();//(类似于一条线对象)  
            r.setColor(Color.BLUE);//设置颜色  
            r.setPointStyle(PointStyle.CIRCLE);//设置点的样式  
            r.setFillPoints(true);//填充点(显示的点是空心还是实心)  
//持续绘图把这句话注释            r.setDisplayChartValues(true);//将点的值显示出来  
            r.setChartValuesSpacing(10);//显示的点的值与图的距离  
            r.setChartValuesTextSize(40);//点的值的文字大小  

          //  r.setFillBelowLine(true);//是否填充折线图的下方  
          //  r.setFillBelowLineColor(Color.GREEN);//填充的颜色,如果不设置就默认与线的颜色一致  
            r.setLineWidth(3);//设置线宽  
            mRenderer.addSeriesRenderer(r);  
          //  rTwo.setFillBelowLine(true);//是否填充折线图的下方  
          //  rTwo.setFillBelowLineColor(Color.GREEN);//填充的颜色,如果不设置就默认与线的颜色一致  

            GraphicalView  view = ChartFactory.getLineChartView(this, mDataset, mRenderer);  
            view.setBackgroundColor(Color.BLACK);  
            setContentView(view);
     }

}

3:有时为了让图表更加美观,我们可以设置手机横屏显示图表需要在AndroidManifest.xml中进行配置

<activity
     android:screenOrientation="landscape"
      android:name="com.example.jsonprase.ZheXianActivity"
      android:label="@string/title_activity_zhe_xian" >
</activity>

4:这样在Activity_Zhe_Xian.xml中就可以显示一张图表了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值