MPAndroidChart 教程:与图表的交互 Interaction with the Chart

简介: 该库允许您完全自定义与图表视图的可能触摸(和手势)交互,并通过回调方法对交互作出反应。启用/禁用交互setTouchEnabled(boolean enabled):启用/禁用与图表的所有可能的触摸交互。

该库允许您完全自定义与图表视图的可能触摸(和手势)交互,并通过回调方法对交互作出反应。

启用/禁用交互

  • setTouchEnabled(boolean enabled):启用/禁用与图表的所有可能的触摸交互。
  • setDragEnabled(boolean enabled):启用/禁用图表的拖动(平移)。
  • setScaleEnabled(boolean enabled):启用/禁用缩放图表上的两个轴。
  • setScaleXEnabled(boolean enabled):启用/禁用x轴上的缩放。
  • setScaleYEnabled(boolean enabled):启用/禁用y轴缩放。
  • setPinchZoom(boolean enabled):如果设置为true,则启用缩放缩放。如果禁用,则可以单独缩放x轴和y轴。
  • setDoubleTapToZoomEnabled(boolean enabled):将此设置为false以禁止通过双击来缩放图表。

图表抛掷/减速

  • setDragDecelerationEnabled(boolean enabled):如果设置为true,图表会在触摸后继续滚动,默认值:true。
  • setDragDecelerationFrictionCoef(float coef):减速摩擦系数[0; 1]间隔,较高的值表示速度将缓慢下降,例如,如果设置为0,它将立即停止。1是无效值,将自动转换为0.9999。

突出显示值

highlightning section,对如何通过点击手势和编程方式突出显示条目进行了描述。

手势回调

OnChartGestureListener将允许您对图表上的手势做出反应:

public interface OnChartGestureListener {

    /**
     * Callbacks when a touch-gesture has started on the chart (ACTION_DOWN)
     *
     * @param me
     * @param lastPerformedGesture
     */
    void onChartGestureStart(MotionEvent me, ChartTouchListener.ChartGesture lastPerformedGesture);

    /**
     * Callbacks when a touch-gesture has ended on the chart (ACTION_UP, ACTION_CANCEL)
     *
     * @param me
     * @param lastPerformedGesture
     */
    void onChartGestureEnd(MotionEvent me, ChartTouchListener.ChartGesture lastPerformedGesture);

    /**
     * Callbacks when the chart is longpressed.
     * 
     * @param me
     */
    public void onChartLongPressed(MotionEvent me);

    /**
     * Callbacks when the chart is double-tapped.
     * 
     * @param me
     */
    public void onChartDoubleTapped(MotionEvent me);

    /**
     * Callbacks when the chart is single-tapped.
     * 
     * @param me
     */
    public void onChartSingleTapped(MotionEvent me);

    /**
     * Callbacks then a fling gesture is made on the chart.
     * 
     * @param me1
     * @param me2
     * @param velocityX
     * @param velocityY
     */
    public void onChartFling(MotionEvent me1, MotionEvent me2, float velocityX, float velocityY);

   /**
     * Callbacks when the chart is scaled / zoomed via pinch zoom gesture.
     * 
     * @param me
     * @param scaleX scalefactor on the x-axis
     * @param scaleY scalefactor on the y-axis
     */
    public void onChartScale(MotionEvent me, float scaleX, float scaleY);

   /**
    * Callbacks when the chart is moved / translated via drag gesture.
    *
    * @param me
    * @param dX translation distance on the x-axis
    * @param dY translation distance on the y-axis
    */
    public void onChartTranslate(MotionEvent me, float dX, float dY);
}

只需让你的接收回调的类实现这个接口并将其设置为图表的监听器:

chart.setOnChartGestureListener(this);

 

相关文章
|
3月前
|
数据可视化 前端开发
Twaver-HTML5基础学习(39)鹰眼可视化视图组件(OverView)
本文介绍了如何在Twaver-HTML5中使用鹰眼(Overview)可视化视图组件,它作为Network的缩略图,允许用户通过缩略图导航Network,支持单击、双击和框选操作来控制Network视图。
50 5
Twaver-HTML5基础学习(39)鹰眼可视化视图组件(OverView)
|
3月前
|
Web App开发 数据可视化 前端开发
Echart的使用初体验,Echarts的基本使用及语法格式,简单图表绘制和使用及图例添加【学习笔记】
本文介绍了ECharts的基本使用和语法格式,包括如何引入ECharts、创建容器、初始化echarts实例对象、配置option参数和一些基础图表的绘制方法。文章还提供了简单图表绘制和使用图例添加的示例代码,以及对ECharts特性和优势的概述。
Echart的使用初体验,Echarts的基本使用及语法格式,简单图表绘制和使用及图例添加【学习笔记】
|
7月前
|
数据可视化 前端开发
数据可视化之antv/g6 交互与事件及自定义Behavior
数据可视化之antv/g6 交互与事件及自定义Behavior
976 1
|
7月前
|
消息中间件 数据可视化 Shell
完美解决 RabbitMQ 可视化界面中 Overview 不显示图形的问题
完美解决 RabbitMQ 可视化界面中 Overview 不显示图形的问题
611 0
87Echarts - 散点图(Visual interaction with stream)
87Echarts - 散点图(Visual interaction with stream)
28 0
|
数据可视化
Qt开发技术:Q3D图表开发笔记(二):Q3DBar三维柱状图介绍、Demo以及代码详解
qt提供了q3d进行三维开发,虽然这个框架没有得到大量运用也不是那么成功,性能上也有很大的欠缺,但是普通的点到为止的应用展示还是可以的。   其中就包括华丽绚烂的三维图表,数据量不大的时候是可以使用的。   上一篇介绍了基础的q3d散点图,本篇介绍基础的柱状图。
Qt开发技术:Q3D图表开发笔记(二):Q3DBar三维柱状图介绍、Demo以及代码详解
|
图形学
Unity 编辑器开发实战【Custom Editor】- 为UI视图制作动画编辑器
Unity 编辑器开发实战【Custom Editor】- 为UI视图制作动画编辑器
263 1
Unity 编辑器开发实战【Custom Editor】- 为UI视图制作动画编辑器
|
API
Flutter没有展示思维脑图的控件?用CustomPainter自己画!
最近启动了一个计划,要使用Flutter开发一个展示所有Flutter Widgets的APP。
463 0
Flutter没有展示思维脑图的控件?用CustomPainter自己画!
|
数据可视化 IDE 开发工具
OpenCV可视化界面插件Image Watch(支持VS2012-VS2019)
OpenCV可视化界面插件Image Watch(支持VS2012-VS2019)
890 0