MPAndroid学习笔记

Android Chart框架 MPAndroidChart学习

2017-02-16  本文已影响1862人  Ugly_K

Android Chart框架 MPAndroidChart学习笔记4_XY轴基本设置


点击这里查看项目源码

1.X轴的基本设置

        /* @描述 X轴基本设置 */
    private void CustomizingXAxis(XAxis mAxis){
        //X轴标签的倾斜角度
        mAxis.setLabelRotationAngle(0f);
        //设置X轴标签出现位置
        //TOP、BOTTOM、BOTH_SIDED、TOP_INSIDE、BOTTOM_INSIDE
        mAxis.setPosition(XAxis.XAxisPosition.BOTTOM);
        //设置标签文本格式
        mAxis.setTextSize(10f);
        //设置标签文本颜色
        mAxis.setTextColor(Color.RED);
        //是否绘制轴线
        mAxis.setDrawAxisLine(true);
        //是否绘制网格线
        mAxis.setDrawGridLines(false);
        //自定义数值格式
        //mAxis.setValueFormatter(new MyCustomFormatter());
    }

2.Y轴基本设置

Y轴的获取方式

    YAxis leftAxis = chart.getAxisLeft();
    YAxis rightAxis = chart.getAxisRight();
    YAxis leftAxis = chart.getAxis(AxisDependency.LEFT);
    //获取两个Y轴
    YAxis yAxis = radarChart.getYAxis();
···

>默认没有特别指定情况下,右Y轴会与左Y轴描述一样的内容比例
>如果需要达到特定的描述,如下操作:

```java
    //定义第一个dataSet
    LineDataSet dataSet = new LineDataSet(entries, "Test");
    //将第一个dataSet的数据用左Y轴来描述
    dataSet.setAxisDependency(YAxis.AxisDependency.LEFT);
    //定义第二个dataSet
    LineDataSet dataSet2 = new LineDataSet(entries2, "Test2"); 
    //将第二个dataSet的数据用左Y轴来描述
    dataSet2.setAxisDependency(YAxis.AxisDependency.RIGHT);
    //一系列设置之后
    ...
    //加入到chart中
    LineData lineData = new LineData(dataSet,dataSet2);
    mChart.setData(lineData);

补充一些Y轴的绘制方法:

    /* @描述 Y轴基本设置 */
    private void CustomizingYAxis(YAxis mAxis){
        //是否启用绘制零线:设置为true后才有后面的操作
        mAxis.setDrawZeroLine(true);
        //设置绘制零线宽度
        mAxis.setZeroLineWidth(5f);
        //绘制零线颜色
        mAxis.setZeroLineColor(Color.BLUE);
    }

附送几个官方文档example:

    Example1:   
    // data has AxisDependency.LEFT
    YAxis left = mChart.getAxisLeft();
    left.setDrawLabels(false); // no axis labels
    left.setDrawAxisLine(false); // no axis line
    left.setDrawGridLines(false); // no grid lines
    left.setDrawZeroLine(true); // draw a zero line
    mChart.getAxisRight().setEnabled(false); // no right axis
    
    Example2:
    YAxis yAxis = mChart.getAxisLeft();
    yAxis.setTypeface(...); // set a different font
    yAxis.setTextSize(12f); // set the text size
    yAxis.setAxisMinimum(0f); // start at zero
    yAxis.setAxisMaximum(100f); // the axis maximum is 100
    yAxis.setTextColor(Color.BLACK);
    yAxis.setValueFormatter(new MyValueFormatter());
    yAxis.setGranularity(1f); // interval 1
    yAxis.setLabelCount(6, true); // force 6 labels
    //... and more
上一篇下一篇

猜你喜欢

热点阅读