HelloCharts开源图表库(一)之折线图

来源:互联网 发布:appium ios java 编辑:程序博客网 时间:2024/06/06 21:40

前面我们介绍了开源图表库MPAndroidChart,请参考:

http://blog.csdn.net/shineflowers/article/details/44704723

我们今天介绍的将是一个更为优秀的图表库,比MPAndroidChart性能更好,功能更完善,UI风格更美观,坐标轴更精细。

  • 支持缩放、滑动以及平移。Zoom(pinch to zoom, double tap zoom), scroll and fling

  • 支持自定义坐标轴(比如坐标轴位置:上下左右内部),支持自动生成坐标轴。Custom and auto-generated axes(top, bottom, left, right, inside)

  • 动画(Animations)

  • 支持预览,即在chart下面会有一个坐标密度更细的附属chart,当选中附属chart的某一区域,附属chart上面的chart会显示选中区域的更详细情况。

  • GitHub地址:

  • https://github.com/lecho/hellocharts-android

  • 下面主要实现折线图:

  • 1.从上面的地址中下载最新hellocharts-library-1.5.3.jar包, 然后copy到项目的libs中

    2. 定义xml文件


  • 3. 显示折线图的部分逻辑如下:

            for (int i = 0; i < 10 ; i++) {                mPointValues.add(new PointValue(i, new Random().nextInt(10)));                mAxisValues.add(new AxisValue(i).setLabel(i)); //为每个对应的i设置相应的label(显示在X轴)        }        Line line = new Line(mPointValues).setColor(BLUE).setCubic(false);        List<Line> lines = new ArrayList<Line>();        lines.add(line);        LineChartData data = new LineChartData();        data.setLines(lines);        //坐标轴        Axis axisX = new Axis(); //X轴        axisX.setHasTiltedLabels(true);        axisX.setTextColor(BLUE);        axisX.setName("采集时间");        axisX.setMaxLabelChars(10);        axisX.setValues(mAxisValues);        data.setAxisXBottom(axisX);        Axis axisY = new Axis();  //Y轴        axisY.setMaxLabelChars(7); //默认是3,只能看最后三个数字        data.setAxisYLeft(axisY);        //设置行为属性,支持缩放、滑动以及平移        mLineChartView.setInteractive(true);        mLineChartView.setZoomType(ZoomType.HORIZONTAL);        mLineChartView.setContainerScrollEnabled(true, ContainerScrollType.HORIZONTAL);        mLineChartView.setLineChartData(data);        mLineChartView.setVisibility(View.VISIBLE);


2 25
原创粉丝点击