Android Chart框架 MPAndroidChart學(xué)習(xí)筆記14_視口設(shè)置
源碼demo看這里
1.視圖
viewPort視圖針對以下類別的chart有效:
- LineChart
- BarChart
- ScatterChart
- CandleStickChart
以下方法適用于Chart類,請注意,視圖操作必須要在chart數(shù)據(jù)設(shè)置完畢再之后再調(diào)用。
2.修改視圖
-
setVisibleXRangeMaximum(float maxXRange)
:可以顯示的最大x軸范圍 -
setVisibleXRangeMinimum(float maxXRange)
:可以顯示的最小x軸范圍
//設(shè)置視口可以顯示的最大x范圍
mChart.setVisibleXRangeMaximum(30f);
//設(shè)置視口可以顯示的最小x范圍
mChart.setVisibleXRangeMinimum(25f);
因為最小就是25f 所以會顯示出多余的空白部分
-setVisibleYRangeMaximum(float maxYRange, AxisDependency axis)
:設(shè)置第一屏顯示Y軸方向顯示的最大范圍
//設(shè)置Y軸可以顯示的最大值
mChart.setVisibleYRangeMaximum(500f,YAxis.AxisDependency.LEFT);
-setViewPortOffsets(float left, float top, float right, float bottom)
:設(shè)置視口在view中的偏移(默認(rèn)值是有一定的偏移的)
如果設(shè)置為setViewPortOffsets(0f,0f,0f,0f)會如下顯示:
如果設(shè)置為setViewPortOffsets(30f,30f,30f,30f)會如下顯示:
-resetViewPortOffsets()
:重置視口偏移
demo:
//設(shè)置視口可以顯示的最大x范圍
mChart.setVisibleXRangeMaximum(30f);
//設(shè)置視口可以顯示的最小x范圍
mChart.setVisibleXRangeMinimum(0f);
//設(shè)置Y軸可以顯示的最大值
mChart.setVisibleYRangeMaximum(500f,YAxis.AxisDependency.LEFT);
//設(shè)置視口View偏移
mChart.setViewPortOffsets(0f,0f,0f,0f);
//添加額外的視口偏移
mChart.setExtraOffsets(-10f,-10f,-10f,-10f);
//重置視口偏移
mChart.resetViewPortOffsets();
2.移動視口View
-fitScreen()
:將左(邊)的當(dāng)前視口指定值。
-moveViewToX(float xValue)
:經(jīng)過縮放之后重新使左邊從指定位置開始。
-moveViewTo(float xValue, float yValue, AxisDependency axis)
:經(jīng)過縮放之后重新使視口垂直中點為指定數(shù)值。
-centerViewTo(float xValue, float yValue, AxisDependency axis)
:經(jīng)過縮放之后重新使視口垂直中點為指定點。
-moveViewToAnimated(float xValue, float yValue, AxisDependency axis, long duration)
:有動畫的移動視口View
-centerViewToAnimated(float xValue, float yValue, AxisDependency axis, long duration)
:有動畫的移動視口View到指定中心點
3.縮放
-zoomIn()
:放大1.4f(默認(rèn))倍
-zoomOut()
:縮小0.7f(默認(rèn))倍
-zoom(float scaleX, float scaleY, float x, float y)
:縮放指定倍數(shù)
-zoom(float scaleX, float scaleY, float xValue, float yValue, AxisDependency axis)
:縮放指定倍數(shù)并指定縮放的Y軸
-zoomAndCenterAnimated(float scaleX, float scaleY, float xValue, float yValue, AxisDependency axis, long duration)
:有動畫的縮放(使用會報錯~)