MpandroidChart设置添加均线(均值线)

xiaoxiao2021-02-28  133

//设置均值 LimitLine ll2 = new LimitLine(7, "均值"); ll2.setLabel("均值"); ll2.setTextColor(Color.parseColor("#5dbcfe")); ll2.setLineWidth(1f); ll2.setEnabled(true); ll2.setLineColor(Color.parseColor("#5dbcfe")); ll2.enableDashedLine(5f, 10f, 0f);//三个参数,第一个线宽长度,第二个线段之间宽度,第三个一般为0,是个补偿 ll2.setLabelPosition(LimitLine.LimitLabelPosition.RIGHT_BOTTOM);//标签位置 ll2.setTextSize(10f); chart.getAxisLeft().addLimitLine(ll2);

附加LineChart设置方法:

public void intiLineChart(LineChart chart) { chart.setDescription(null);//去除Description chart.setDragEnabled(true);//设置可以拖动 chart.setDragDecelerationEnabled(true);//拖动减速 chart.setDoubleTapToZoomEnabled(false);//取消双击缩放 chart.setBackgroundColor(ContextCompat.getColor(activity, R.color.appbgcolor));//背景颜色 chart.setScaleYEnabled(false);//1取消y轴缩放 chart.setDragDecelerationFrictionCoef(0.9f);//拖动降速速率 chart.getAxisRight().setEnabled(false);//取消右边y轴 chart.getAxisLeft().setTextSize(10);//y轴字体大小 chart.getAxisLeft().setMinWidth(0f);//左边y轴最小值 chart.getAxisLeft().setAxisLineColor(Color.parseColor("#00ffffff"));//y轴线颜色 chart.getAxisLeft().setGridColor(Color.parseColor("#06253a"));//网格颜色 chart.getAxisLeft().setTextColor(Color.parseColor("#65859a"));//y轴字体颜色 chart.getAxisLeft().setDrawLimitLinesBehindData(true);//设置限制线 chart.getXAxis().setTextColor(Color.parseColor("#65859a"));//x轴字体颜色 chart.getXAxis().setAxisLineWidth(0);//x轴线宽度 chart.getXAxis().setDrawGridLines(false);//取消x轴网格 chart.getXAxis().setPosition(XAxis.XAxisPosition.BOTTOM);//设置x轴在底部显示 chart.getXAxis().setTextSize(10);//x轴字体大小 chart.getXAxis().setAxisLineColor(Color.parseColor("#00ffffff"));//x轴线颜色 chart.getXAxis().setYOffset(0);//x轴偏移量 chart.getLegend().setEnabled(false); //设置可用课时 LimitLine ll1 = new LimitLine(16, "可用"); ll1.setTextColor(Color.YELLOW); ll1.setLabel("可用"); ll1.setLineWidth(1f); ll1.setEnabled(true); ll1.setLineColor(Color.YELLOW); ll1.enableDashedLine(5f, 10f, 0f);//三个参数,第一个线宽长度,第二个线段之间宽度,第三个一般为0,是个补偿 ll1.setLabelPosition(LimitLine.LimitLabelPosition.RIGHT_BOTTOM);//标签位置 ll1.setTextSize(10f); chart.getAxisLeft().addLimitLine(ll1); //设置均值 LimitLine ll2 = new LimitLine(7, "均值"); ll2.setLabel("均值"); ll2.setTextColor(Color.parseColor("#5dbcfe")); ll2.setLineWidth(1f); ll2.setEnabled(true); ll2.setLineColor(Color.parseColor("#5dbcfe")); ll2.enableDashedLine(5f, 10f, 0f);//三个参数,第一个线宽长度,第二个线段之间宽度,第三个一般为0,是个补偿 ll2.setLabelPosition(LimitLine.LimitLabelPosition.RIGHT_BOTTOM);//标签位置 ll2.setTextSize(10f); chart.getAxisLeft().addLimitLine(ll2); initChartData(chart); }

添加数据:

private void initChartData(LineChart chart) { //每个点的坐标,自己随便搞点(x,y)坐标就可以了 List<Entry> pointValues = new ArrayList<>(); for (int i = 1; i < 19; i++) { int y = (int) (Math.random() * 20); pointValues.add(new Entry(i, y)); } //点构成的某条线 LineDataSet lineDataSet = new LineDataSet(pointValues, ""); //设置该线的颜色 lineDataSet.setColor(Color.parseColor("#5dbcfe")); //设置每个点的颜色 lineDataSet.setCircleColor(Color.parseColor("#5dbcfe")); //设置该线的宽度 lineDataSet.setLineWidth(1f); //设置每个坐标点的圆大小 lineDataSet.setCircleRadius(4f); //设置是否画圆 lineDataSet.setDrawCircles(true); //高亮颜色 lineDataSet.setHighLightColor(Color.parseColor("#5dbcfe")); //中心圆半径 lineDataSet.setCircleHoleRadius(2); //圆圈颜色 lineDataSet.setCircleColor(Color.parseColor("#5bbcff")); // 设置平滑曲线模式 // lineDataSet.setMode(LineDataSet.Mode.CUBIC_BEZIER); //设置线一面部分是否填充颜色 lineDataSet.setDrawFilled(true); if (Build.VERSION.SDK_INT >= 18) { lineDataSet.setFillDrawable(ContextCompat.getDrawable(activity, R.drawable.shape_mianchart_filldrawable)); } else { //设置填充的颜色 lineDataSet.setFillColor(Color.parseColor("#445dbcfe")); } //设置是否显示点的坐标值 lineDataSet.setDrawValues(true); lineDataSet.setValueTextColor(Color.parseColor("#5abdfe")); //线的集合(可单条或多条线) List<ILineDataSet> dataSets = new ArrayList<>(); dataSets.add(lineDataSet); //把要画的所有线(线的集合)添加到LineData里 LineData lineData = new LineData(dataSets); //把最终的数据setData chart.setData(lineData);
转载请注明原文地址: https://www.6miu.com/read-38572.html

最新回复(0)