美文网首页
MPAndroid-Chart库开发日常

MPAndroid-Chart库开发日常

作者: 机器灵_砍菜刀 | 来源:发表于2019-05-06 14:52 被阅读0次


    一,lineChart(关于柱状和扇形其属性大同小异,看懂一个,其他两个很好理解)

    1,lineChart属性:

    lineChart.setBackgroundColor(getResources().getColor(R.color.public_white));//表北京色设置

    lineChart.animateY(1000);//加载时的动画效果

    lineChart.setTouchEnabled(true);允许启用/禁用所有可能的与图表的触摸交互。

    lineChart.setScaleEnabled(false);启用/禁用两个轴上图表的缩放比例。

    lineChart.setDoubleTapToZoomEnabled(false);将其设置为false以禁止通过双击缩放图表来缩放图表。

    lineChart.setHighlightPerTapEnabled(true); 点击选中是否显示高亮线

    lineChart.getLegend().setEnabled(false);//是否显示图例

    lineChart表属性比较简单,网上搜索一大堆

    X轴绘制

    XAxis xAxis =lineChart.getXAxis();

    xAxis.setPosition(XAxis.XAxisPosition.BOTTOM);//X轴位置

    xAxis.setDrawGridLines(false);/设置x轴上每个点对应的线

    xAxis.setDrawAxisLine(true);//是否禁止绘制x轴

    xAxis.setLabelCount(数据长度, false);//参数一就是X轴的左边点,参数二照写

    IAxisValueFormatter xAxisFormatter =new CashFlowXValueFormatter(dateList);//设置自定义的x轴值格式化器(关于X显示的内容可以在这里做处理)

    xAxis.setValueFormatter(xAxisFormatter);

    Y轴绘制(Y轴分左右两侧,根据项目需求)

    //Y轴左侧

            YAxis leftAxis =lineChart.getAxisLeft();

            leftAxis.enableGridDashedLine(5f, 5f, 5f);

            leftAxis.setGridColor(Color.parseColor("#E5E5E5"));

            leftAxis.setDrawGridLines(true);//绘制格网线

            leftAxis.setDrawLabels(true);//禁止绘制y轴标签

            leftAxis.setDrawAxisLine(false);//禁止绘制y轴

            leftAxis.setGridDashedLine(new DashPathEffect(new float[]{10f, 10f}, 0f));

            leftAxis.setAxisMinimum(minimum); // this replaces setStartAtZero(true)

            IAxisValueFormatter yAxisFormatter=new CashFlowFormattedYValue();

            leftAxis.setValueFormatter(yAxisFormatter);

    //Y轴-右边-隐藏

            lineChart.getAxisRight().setEnabled(false);

    LineDataSet setLine;

    ArrayList<Entry> values;

    if (lineChart.getData() !=null &&lineChart.getData().getDataSetCount() >0) {

      setLine= (LineDataSet)lineChart.getData().getDataSetByIndex(0);

        setLine.setValues(values);

        lineChart.getData().notifyDataChanged();

        lineChart.notifyDataSetChanged();

    }else {

    //这是是操作折线统计图中折线的属性

    setLine=new LineDataSet(values, "");

        setLine.setColor(Color.parseColor("#F5C577"));//折现颜色

        setLine.setCircleColor(Color.parseColor("#F5C577"));//原点颜色

        setLine.setLineWidth(1f); 折现宽度

        setLine.setCircleRadius(3f); 连接原点半径

        setLine.setHighLightColor(Color.rgb(244, 117, 117));

        setLine.setDrawCircleHole(false);

        setLine.setHighlightEnabled(true);

        setLine.setDrawHorizontalHighlightIndicator(false); 横线是否显示

        setLine.setDrawVerticalHighlightIndicator(true);竖线是否显示  lineChart上面加黑斜体的属性一定要为true

        setLine.setDrawValues(false);

        LineData data =new LineData(setLine);

        data.setValueTextColor(Color.WHITE);

        data.setValueTextSize(9f);

        lineChart.setData(data);

    }

    //默认选中位置数据,一定要在最后调用在 lineChart.setData(data);之后调用

    lineChart.highlightValue(位置, 0, 0);

    相关文章

      网友评论

          本文标题:MPAndroid-Chart库开发日常

          本文链接:https://www.haomeiwen.com/subject/csolpqtx.html