Android 做过2点的直线坐标系

引用库,gradle build中写入


implementation 'com.github.PhilJay:MPAndroidChart:v3.0.3'

打点为(0,0)一个点的图



public void intialize(){
        XAxis xAxis=lineChart.getXAxis();
//        // 两个都设置为 true
        xAxis.setEnabled(true);
        xAxis.setDrawGridLines(true);
        xAxis.setPosition(XAxis.XAxisPosition.BOTTOM);
        xAxis.setAxisMinimum(0); // 设置X轴最小值
        xAxis.setAxisMaximum(30); // 设置X轴最大值
        YAxis yAxisLeft = lineChart.getAxisLeft();
        yAxisLeft.setAxisMaximum(220); // 设置Y轴最大值
        yAxisLeft.setAxisMinimum(0); // 设置Y轴最小值
        lineChart.getAxisRight().setEnabled(false); // 右侧Y轴不启用
        List<Entry> init = new ArrayList<Entry>();
        Entry c1e1 = new Entry(0,0);
        init.add(c1e1);
        LineDataSet setComp1 = new LineDataSet(init, "测量值");
        setComp1.setAxisDependency(YAxis.AxisDependency.LEFT);
        lineChart.setTouchEnabled(false);
        Description description=new Description();
        description.setText("");
        lineChart.setDescription(description);
        LineData data = new LineData(setComp1);
        lineChart.setData(data);
        lineChart.invalidate();
    }

下面为过3组不同点的直线连线

public void newChart(){
        XAxis xAxis=lineChart.getXAxis();
//        // 两个都设置为 true
        xAxis.setEnabled(true);
        xAxis.setDrawGridLines(true);
        xAxis.setPosition(XAxis.XAxisPosition.BOTTOM);
        xAxis.setAxisMinimum(0); // 设置X轴最小值
        xAxis.setAxisMaximum(30); // 设置X轴最大值
        YAxis yAxisLeft = lineChart.getAxisLeft();
        yAxisLeft.setAxisMaximum(220); // 设置Y轴最大值
        yAxisLeft.setAxisMinimum(0); // 设置Y轴最小值
        lineChart.getAxisRight().setEnabled(false); // 右侧Y轴不启用
        List<Entry> valsComp1 = new ArrayList<Entry>();
        List<Entry> valsComp2 = new ArrayList<Entry>();
        List<Entry> valsComp3 = new ArrayList<Entry>();
        if (i==4){
            Entry c1e1 = new Entry(x.get(0), y.get(0));
            valsComp1.add(c1e1);
            c1e1 = new Entry(x.get(1), y.get(1));
            valsComp2.add(c1e1);
            valsComp1.add(c1e1);
            c1e1 = new Entry(x.get(2), y.get(2));
            valsComp2.add(c1e1);
            c1e1 = new Entry(x.get(3), y.get(3));
            valsComp3.add(c1e1);
            c1e1 = new Entry(x.get(4), y.get(4));
            valsComp3.add(c1e1);
            LineDataSet setComp1 = new LineDataSet(valsComp1, "测量值");
            setComp1.setAxisDependency(YAxis.AxisDependency.LEFT);
            LineDataSet setComp2 = new LineDataSet(valsComp2, "运动能力");
            setComp2.setAxisDependency(YAxis.AxisDependency.LEFT);
            setComp2.setColor(Color.RED);
            setComp2.setDrawVerticalHighlightIndicator(true);
            LineDataSet setComp3 = new LineDataSet(valsComp3, "次运动能力");
            setComp3.setAxisDependency(YAxis.AxisDependency.LEFT);
            setComp3.setColor(Color.YELLOW);
            LineData data = new LineData(setComp1);
            data.addDataSet(setComp2);
            data.addDataSet(setComp3);
            Description description=new Description();
            description.setText("");
            lineChart.setDescription(description);
            lineChart.setTouchEnabled(false);
            lineChart.setData(data);
            lineChart.invalidate();
        }else {
            for (int q=0;q<1;q++){
                Entry c1e1 = new Entry(x.get(q), y.get(q));
                valsComp1.add(c1e1);
            }
            LineDataSet setComp1 = new LineDataSet(valsComp1, "测量值");
            setComp1.setAxisDependency(YAxis.AxisDependency.LEFT);
            lineChart.setTouchEnabled(false);
            LineData data = new LineData(setComp1);
            Description description=new Description();
            description.setText("");
            lineChart.setDescription(description);
            lineChart.setData(data);
            lineChart.invalidate();
        }
    }

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值