HTML5   发布时间:2022-04-25  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了MPAndroidChart 教程:修改视窗 (Modifying the Viewport)大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

一、概述

@H_375_7@mPAndroidChart 图表具有多种不同的方法修改视窗(图表上那些是可见的,以及 aim of the view)。 注意,这些方法仅适用于 LineChart,BarChart,ScatterChartCandleStickChart .

二、什么是可见的

  • setVisible@L_799_3@minimum(float minxrange) : 设定x轴最大可见区域范围的大小。如果设置为17,则不可能进一步放大视图(在x轴超过17的值)。

    MPAndroidChart 教程:修改视窗 (Modifying the Viewport)

    MPAndroidChart 教程:修改视窗 (Modifying the Viewport)

// 上面左图不做任何处理
    // 上面右图:
    chart.setVisible@L_799_3@minimum(17);
  • setVisible@L_799_3@maximum(float maxxrange) : 设定x轴最大可见区域范围的大小。 如果设定为3,则在x轴超过3的值被视为不可见(不滑动 chart 的话)。

    MPAndroidChart 教程:修改视窗 (Modifying the Viewport)

    MPAndroidChart 教程:修改视窗 (Modifying the Viewport)

chart.setVisible@L_799_3@maximum(3); // 效果如上面左图

    // 这时你会发现可以移动 chart 了
    // 手指稍微左滑下效果图如上面右图
  • setVisibleYRangeMaximum(float maxYRange,AxisDependency axis) : 设定y轴最大可见区域范围的大小。 您还需要提供要对应的轴(YAxis.AxisDependency.LEFTYAxis.AxisDependency.RIGHT )

    MPAndroidChart 教程:修改视窗 (Modifying the Viewport)

    MPAndroidChart 教程:修改视窗 (Modifying the Viewport)

// 上面左效果图对应代码
    chart.setVisibleYRangeMaximum(50f,YAxis.AxisDependency.LEFT);

    // 上面右效果图对应代码
    chart.setVisibleYRangeMaximum(70f,YAxis.AxisDependency.LEFT);
  • setViewPortOffsets(float left,float top,float right,float bottom) : 设置当前视图的偏移量(实际图表窗口的两侧偏移量)。 设置这个,将阻止图表自动计算它的偏移量。
    使用 resetViewPortOffsets() 撤消此设置。

    MPAndroidChart 教程:修改视窗 (Modifying the Viewport)

    MPAndroidChart 教程:修改视窗 (Modifying the Viewport)


    MPAndroidChart 教程:修改视窗 (Modifying the Viewport)

    MPAndroidChart 教程:修改视窗 (Modifying the Viewport)

chart.setViewPortOffsets(50,0,0);     // 图1
    chart.setViewPortOffsets(0,50,0);     // 图2
    chart.setViewPortOffsets(50,0);    // 图3
    chart.setViewPortOffsets(50,50);  // 图4
  • resetViewPortOffsets() : 撤销所有通过 setViewPortOffsets(...) 方法设置的偏移量 。 允许图表再次自动计算所有偏移。
  • setExtraOffsets(float left,float bottom) : 设置额外的偏移,将被添加自动计算的偏移。 这不会改变自动计算的偏移量,但增加了额外的空间给它们。

三、移动视图 (它的目的)

  • fitScreen() : 重设所有缩放和拖动,使图表完全适合它的边界(完全缩小)。
  • @H_430_8@moveViewToX(float xIndeX) : 将当前视口的左侧(边)到指定的 x 值。

    MPAndroidChart 教程:修改视窗 (Modifying the Viewport)

    MPAndroidChart 教程:修改视窗 (Modifying the Viewport)

chart.setVisible@L_799_3@maximum(3);

    chart.moveViewToX(2);  // 上面左效果图,Mar是三月
    chart.moveViewToX(5);  // 上面右效果图,Jun是六月
  • @H_430_8@moveViewToY(float yValue,AxisDependency axis) : 使得指定的y值显示在对应y轴( 左or右 )的中间。

    MPAndroidChart 教程:修改视窗 (Modifying the Viewport)

    MPAndroidChart 教程:修改视窗 (Modifying the Viewport)

YAxis leftAxis = chart.getAxisLeft();
    leftAxis.setTextSize(18f);
    chart.setVisibleYRangeMaximum(50f,YAxis.AxisDependency.LEFT);

    chart.moveViewToY(40,YAxis.AxisDependency.LEFT); // 上面左效果
    chart.moveViewToY(40,YAxis.AxisDependency.LEFT); // 上面右效果
  • @H_430_8@moveViewTo(float xIndex,float yValue,AxisDependency axis) : 相当于setVisiblexrange(...)setVisibleYRange(...) 组合使用。
  • centerViewTo(int xIndex,AxisDependency axis) : 相当于 setVisiblexrange(...)setVisibleYRange(...) 组合使用。

注:所有 @H_430_8@moveViewTo(...) 方法自动 invalidate() 刷新图表。 没有必要进行进一步调用 invalidate()

四、变焦 (编程)

  • zoomIn() : Zooms in by 1.4f,into the charts center.
  • zoomOut() : Zooms out by 0.7f,from the charts center.
  • zoom(float scaleX,float scaleY,float x,float y) : 根据所给的参数进行放大或缩小。 参数 xy 是变焦中心的坐标(单位:像素)。 记住,1f = 无放缩

五、完整示例

chart.setData(...); // first set data

    // Now modify viewport
    // allow 20 values to be displayed at 
    once on the x-axis,not more
    chart.setVisible@L_799_3@maximum(20); 
    // set the left edge of the chart to x-index 10
    chart.moveViewToX(10); 

    // moveViewToX(...) also calls invalidate()

大佬总结

以上是大佬教程为你收集整理的MPAndroidChart 教程:修改视窗 (Modifying the Viewport)全部内容,希望文章能够帮你解决MPAndroidChart 教程:修改视窗 (Modifying the Viewport)所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。