框架

m_lineChart = m_layoutView.findViewById(R.id.linechart);

LineChart
m_lineChart.setTouchEnabled(true);
//2.启用/禁用图表的拖动(平移)
m_lineChart.setDragEnabled(true);
//3.启用/禁用两个轴上的图表缩放。
m_lineChart.setScaleEnabled(true);
//4.启用/禁用x轴上的缩放
m_lineChart.setScaleXEnabled(true);
//5.启用/禁用y轴缩放
m_lineChart.setScaleYEnabled(true);
//6.如果设置为true,则启用缩放缩放.同一个手势可以同时缩放XY 轴
m_lineChart.setPinchZoom(false);
//7.将此设置为false以禁止通过双击来缩放图表
m_lineChart.setDoubleTapToZoomEnabled(false);
// m_lineChart.setOnChartGestureListener();//手势
//突出显示
m_lineChart.setHighlightPerDragEnabled(true);//将此设置为true Chart,以便在完全缩小时在图表表面上拖动时允许突出显示。默认值:true
m_lineChart.setHighlightPerTapEnabled(true);//将此设置为false Chart以防止通过点按手势突出显示值。仍可通过拖动或以编程方式突出显示值。默认值:true
m_lineChart.setMaxHighlightDistance(100);//将此设置为false Chart以防止通过点按手势突出显示值。仍可通过拖动或以编程方式突出显示值。默认值:true
m_lineChart.setOnChartValueSelectedListener(new OnChartValueSelectedListener() {
@Override
public void onValueSelected(Entry e, Highlight h) {
Log.i(“Value”,"x = “+e.getX()+” Y= “+e.getY()+” "+h.getDrawX());
}

        @Override
        public void onNothingSelected() {
            Log.i("Value","onNothingSelected");
        }
    });
    //        m_lineChart.setHighlighter();//不懂

// //先画出坐标轴
// m_lineChart.setDrawBorders(false);//不显示边界

X
//获取X轴对象
xAxis = m_lineChart.getXAxis();
xAxis.setEnabled(true);//将轴设置为启用或禁用。如果禁用,则无论其他任何设置如何,都不会绘制轴的任何部分。
xAxis.setDrawLabels(true);//将此项设置为true以启用绘制轴的标签
xAxis.setDrawAxisLine(true);//如果应绘制沿轴(轴线)的线,则将此设置为true(其实就是设施X轴的 轴线)
xAxis.setPosition(XAxis.XAxisPosition.BOTTOM);//设置X轴的位置(上下两条)TOP 上, BOTTOM 下, BOTH_SIDED 上下都显示, TOP_INSIDE(标签再线的内部), BOTTOM_INSIDE
xAxis.setDrawGridLines(true);//将其设置为true以启用绘制轴的网格线,false的时候 X轴上每个标签对应的Y轴线就不显示
// xAxis.setAxisMaximum(10);//为此轴设置自定义最大值。如果设置,则不会根据提供的数据自动计算此值。
// xAxis.resetAxisMaximum();//调用此方法以撤消先前设置的最大值。通过这样做,您将再次允许轴自动计算它的最大值。
// xAxis.setAxisMinimum(10);//为此轴设置自定义最小值。如果设置,则不会根据提供的数据自动计算此值。
// xAxis.resetAxisMinimum();//调用此方法以撤消先前设置的最小值。通过这样做,您将再次允许轴自动计算它的最小值。
// xAxis.setLabelCount(5,true);//如果启用,此轴将仅显示其最小值和最大值。这将忽略/覆盖定义的标签计数(如果不强制)。(设置X轴的 标签数量)
// xAxis.setPosition(XAxis.XAxisPosition.BOTTOM_INSIDE);//设置应绘制轴标签的位置。INSIDE_CHART或OUTSIDE_CHART。(同函数setPosition中的TOP_INSIDE(标签再线的内部), BOTTOM_INSIDE)
xAxis.setGranularity(1);//设置轴值之间的最小间隔。这可用于避免在放大到为轴设置的小数位数不再允许区分两个轴值的点时重复值。
xAxis.setGranularityEnabled(false);
// xAxis.setGranularityEnabled(true);//启用粒度特征,在放大时限制y轴的间隔。默认值:false 同setGranularity(1)
//修改外观颜色
xAxis.setTextColor(Color.RED);//设置轴标签的颜色
xAxis.setTextSize(10);//以dp为单位设置轴标签的文本大小
xAxis.setTypeface(Typeface.DEFAULT);//Typeface为轴标签设置字体
xAxis.setGridColor(Color.BLUE);//设置此轴的网格线的颜色,X轴设置则改变竖线的颜色
xAxis.setGridLineWidth(0.5f);//设置此轴的网格线的宽度。
xAxis.setAxisLineColor(Color.GREEN);//设置此轴的轴线颜色。
// xAxis.setAxisLineWidth(20);//设置此轴的轴线宽度
// xAxis.enableGridDashedLine(100,20,0);//允许以虚线模式绘制网格线,例如像“ - - - - - - ”。“lineLength”控制线条的长度,“spaceLength”控制线条之间的空间,“phase”控制起始点。
LimitLine ll = new LimitLine(9f,“临界值”);//s设置特别的 某条线
ll.setLineColor(Color.RED);
ll.setLineWidth(1f);
ll.setTextColor(Color.BLACK);
ll.setTextSize(12f);
xAxis.addLimitLine(ll);//添加
// xAxis.removeLimitLine(ll);//移除
// xAxis.setDrawLimitLinesBehindData(false);//不懂 允许控制LimitLines和实际数据之间的z顺序。如果将其设置为true,LimitLines则会在实际数据后面绘制,否则将在顶部绘制。默认值:false
xAxis.setLabelRotationAngle(45);//设置绘制x轴标签的角度(以度为单位)。(设置字体倾斜度)

Y
//获取左边Y轴
axisLeft = m_lineChart.getAxisLeft();

    //获取右边Y轴
    axisRight = m_lineChart.getAxisRight();
    axisLeft.setEnabled(true);//将轴设置为启用或禁用。如果禁用,则无论其他任何设置如何,都不会绘制轴的任何部分。
    axisRight.setEnabled(false);//将轴设置为启用或禁用。如果禁用,则无论其他任何设置如何,都不会绘制轴的任何部分。
    axisLeft.setInverted(false);//如果设置为true,则此轴将被反转,这意味着最高值将位于底部,最低值将位于顶部。X轴没有这个方法

// axisLeft.setSpaceTop(100);//不懂 X轴没有这个方法
// axisLeft.setSpaceBottom(50);//不懂 X轴没有这个方法
axisLeft.setPosition(YAxis.YAxisLabelPosition.OUTSIDE_CHART);//设置应绘制轴标签的位置。INSIDE_CHART或OUTSIDE_CHART。
axisLeft.setGranularity(1);//设置轴值之间的最小间隔。这可用于避免在放大到为轴设置的小数位数不再允许区分两个轴值的点时重复值。
// axisLeft.setGranularityEnabled(true);//启用粒度特征,在放大时限制y轴的间隔。默认值:false,等同setGranularity(1)
axisLeft.setGridColor(Color.RED);//设置此轴的网格线的颜色,X轴设置则改变竖线的颜色

// axisLeft.setDrawZeroLine(false);//设启用/禁用绘制零线。
// axisLeft.setZeroLineWidth(2f);//设置此轴的网格线的颜色,X轴设置则改变竖线的颜色
// axisLeft.setZeroLineColor(Color.DKGRAY);//设置零线应具有的颜色。

设置 线条说明位置
Legend legend = m_lineChart.getLegend();
legend.setEnabled(true);
legend.setOrientation(Legend.LegendOrientation.VERTICAL);
legend.setVerticalAlignment(Legend.LegendVerticalAlignment.TOP);
legend.setHorizontalAlignment(Legend.LegendHorizontalAlignment.RIGHT);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值