11-Echarts 配置系列之:坐标轴指示器 axisPointer

坐标轴指示器是指示坐标轴当前刻度的工具。

在之前的 tooltip、xAxis(yAxis)、 grid 配置系列中,都包含着 axisPointer 的设置,大家也可以看到其中的显示效果,在此也有对应的配置优先级,其中关系大致如下:

  1. 单独配置的 axisPointer 优先级 永远 高于 在 tooltip 中配置的优先级。
  2. 没有条件一的影响下,层级越深,优先级越高

基本使用:鼠标悬浮到图上,可以出现标线和刻度文本。

文章最后的配置代码为 解剖图的示例代码

一、坐标轴指示器 axisPointer 配置代码

option={
    //  全局配置坐标轴指示器
    axisPointer:{
        id:1,                     //  组件ID
        show:true,                //  是否显示组件
        type:'line',              //  指示器类型 line 、shadow 、none
        snap:true,                //  是否吸附到店上
        z:1,                      //  坐标轴指示器的 z 值
        status:'show',            // 初始指示器的状态, show 显示, hide 隐藏 
        value:5000,               // 当前指示器初始的 Vlaue 值   
        triggerOn:'mousemove',    // 坐标轴指示器触发条件,鼠标移动还是点击
        // 坐标轴指示器文本标签 头
        label:{
              show:true,              // 是否显示文本标签
              precision:2,            // 文本中数值的精准度,保留两位小数
              formatter:'{value}数值',//  文本标签文字的格式化器
              margin:5,               // label 距离轴的距离
              color:'red',            // 文字的颜色
              fontStyle:'normal',     // 字体的风格
              fontWeight:400,         // 字体粗细
              fontFamily:'serif',     // 字体系列
              fontSize:15,            // 字体大小
              lineHeight:50,          // 字体行高
              width:200,              // 文本显示宽度
              height:300,             // 文本显示高度
              textBorderColor:'red',      // 文字描边颜色
              textBorderWidth:50,         // 文字描边宽度
              textBorderType:'solid',     // 文字描边类型
              textBorderDashOffset:15,    // 文字描边类型为虚线时,虚线的偏移量
              textShadowColor:'red',      // 文字阴影颜色
              textShadowBlur:10,          // 文字阴影长度
              textShadowOffsetX:10,       // 文字阴影水平偏移量
              textShadowOffsetY:10,       // 文字阴影竖直偏移量
              overflow:'break',           // 文本超出宽度是否截断或者换行
              ellipsis:'···',             // 文本超出截断后,文本显示的内容
              padding:[5,5,5,5],          // 文本标签内边距
              backgroundColor:'red',      // 文本标签的背景颜色
              borderColor:'red',          // 文本标签的边框颜色
              borderWidth:5,              // 文本标签的边框宽度
              shadowBlur:4,               // 标签阴影大小
              shadowColor:'red',          // 标签阴影颜色
              shadowOffsetX:10,           // 标签阴影水平偏移量
              shadowOffsetY:10,           // 标签阴影竖直偏移量
              
        },
        // 坐标轴指示器文本标签 尾
        
        // 指示器-线的样式 头
        lineStyle:{
            color:'red',                  // 线的颜色
            width:10,                     // 线的宽度
            type:'solid',                 // 线的类型
            dashOffset:10,                // 线类型为虚线时,虚线的偏移量
            cap:'butt',                   // 线段末端的形状
            join:'bevel',                 // 两个线段之间相连部分的形状
            miterLimit:10,                // join 为 miter 时,斜接面的比例
            shadowBlur:10,                // 线的阴影长度
            shadowColor:'red',            // 线的阴影颜色
            shadowOffsetX:10,             // 线阴影水平偏移量
            shadowOffsetY:10,             // 线阴影竖直偏移量
            opacity:0.8,                  // 线的透明度  
        },
        // 直线指示器的样式 尾
        
        // 阴影指示器的样式 头
        shadowStyle:{
            color:'red',                  // 图形填充颜色
            shadowBlur:10,                // 图形阴影长度
            shadowColor:'red',            // 图形阴影颜色
            shadowOffsetX:10,             // 图形阴影水平偏移量
            shadowOffsetY:10,             // 图形阴影竖直偏移量
            opacity:0.8,                  // 图形透明度                 
        },
        // 阴影指示器的样式 尾
        
        triggerEmphasis:true,             // 是否触发系列强调功能,对应的数据是否高亮
        triggerTooltip:true,              // 是否触发 tooltip
       
        // 拖拽手柄样式 头
        handle:{
            show:true,                        // 是否一直显示手柄
            icon:'pin',                       // 这个配置似乎有问题,配置之后手柄就消失
            size:20,                          // 手柄大小
            margin:50,                        // 手柄与轴的距离
            color:'red',                      // 手柄颜色
            throttle:50,                      // 手柄拖拽时触发视图的更新周期
            shadowBlur:5,                     // 手柄阴影大小
            shadowColor:'red',                // 手柄阴影颜色   
            shadowOffsetX:10,                 // 手柄阴影水平偏移量
            shadowOffsetY:10,                 // 手柄阴影竖直偏移量  
        },
        // 拖拽手柄样式 尾

        // 在一个 Echartsr 容器中,关联不同图形中坐标轴指示器,同时触发
        link:[
            {
                   xAxisIndex:[1,2,3],        // 同时触发图形中 xAxisIndex 为 0、3、4 的 X 坐标轴指示器
                   yAxisName:'all',           // 同时触发所有图形的 Y 坐标轴指示器     
            },        
        ],

    },

};

二、解剖图

 三、解剖图 option 配置代码

使用:

 代码:

option = {
  title: {
    text: 'World Population'
  },
  legend: {},
  grid: {
    left: '10%',
    right: '4%',
    width:'80%',
    height:'80%',
    containLabel: true
  },
  axisPointer:{
      show:true,
      label:{
        formatter:'{value}数据',
      },
      value:520000,
      status:'show',
      handle:{
        show:true,
      },
      lineStyle:{
        color:'red',
        cap:'round',
        width:4,

      },
      triggerEmphasis:true,
      triggerOn:'mousemove',
     
    },
  xAxis: [{
    type: 'value',
    boundaryGap: [0, 0.01],
  },
  {
    type: 'value',
    boundaryGap: [0, 0.01],
    axisPointer:{
      show:true,
      label:{
        formatter:'{value}数据',
      },
    }
  }],
  yAxis: {
    type: 'category',
    data: ['Brazil', 'Indonesia', 'USA', 'India', 'China', 'World'],
    axisPointer:{
     show:true,
     handle:{
       margin:100,
     }
    }
  },
  series: [
    {
      name: '2011',
      type: 'bar',
      data: [18203, 23489, 29034, 104970, 131744, 630230]
    },
    {
      name: '2012',
      type: 'bar',
      data: [19325, 23438, 31000, 121594, 134141, 681807]
    }
  ]
};

  • 13
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 要禁止随着Y轴上下滚动,可以通过设置 `snap` 属性为 `true` 来实现。具体代码如下: ```javascript option = { ... xAxis: { type: 'category', data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'] }, yAxis: { type: 'value' }, tooltip: { trigger: 'axis', axisPointer: { type: 'cross', snap: true // 禁止随着Y轴上下滚动 } }, ... }; ``` 设置 `snap` 属性为 `true`,表示开启吸附模式,十字准星指示器不会随着Y轴上下滚动,而是会在最近的坐标轴刻度上停靠。 ### 回答2: ECharts 是一款非常流行的数据可视化库,它提供了丰富的图表展示功能。其中的 axisPointer 功能可以在图表中显示一个准星指示器,帮助用户更直观地对数据进行分析。而在使用 axisPointer 功能时,有时候我们希望准星指示器固定在界面上,不随着 Y 轴的上下滚动而移动。那么如何实现这个需求呢? 要禁止 axisPointer 随着 Y 轴上下滚动而移动,我们可以设置 axisPointer 的 handle 属性为 "none"。axisPointer 的 handle 表示指示器的手柄,可以用来控制准星指示器的移动,设置为 "none" 即表示没有手柄,不能通过手柄移动指示器。 具体的代码如下: ``` option = { xAxis: { type: 'category', data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'] }, yAxis: { type: 'value' }, axisPointer: { type: 'cross', handle: { show: false } }, series: [{ data: [120, 200, 150, 80, 70, 110, 130], type: 'line' }], grid: { left: '3%', right: '4%', bottom: '3%', containLabel: true }, }; ``` 在上述代码中,我们设置了 axisPointer 的 type 为 'cross',表示展示一个十字准星指示器。然后,将 handle 的 show 属性设置为 false,即可禁止 axisPointer 随 Y 轴滚动。 通过以上设置,我们可以实现在 ECharts 的图表中开启十字准星指示器,并且禁止它随着 Y 轴的上下滚动而移动。希望以上解答对您有帮助。 ### 回答3: 要禁止随着Y轴上下滚动,可以使用EchartsaxisPointer功能。axisPointerEcharts中用来显示坐标轴提示信息的组件,其中包括了十字准星指示器。可以通过设置axisPointer的link属性来实现禁止Y轴上下滚动的效果。 首先,在初始化Echarts实例的时候,需要配置axisPointer的link属性。link是一个数组,其中每一个元素对应一个坐标轴axisPointer。在这个数组中,我们只需要设置要禁止Y轴上下滚动的axisPointer的link属性为'none'。 假设我们要禁止Y轴上下滚动的是X轴的axisPointer,可以按照以下步骤进行: 1. 在Echarts配置项option中,找到xAxis并设置axisPointer的link属性。 ```javascript option = { xAxis: [ { axisPointer: { link: [{ yAxisIndex: 'all' }] }, // 其他xAxis配置 } // 其他xAxis配置 ], // 其他配置 }; ``` 2. 在axisPointer的link属性中设置yAxisIndex的值为'all'。 ```javascript link: [{ yAxisIndex: 'all' }] ``` 通过以上配置,可以实现X轴的axisPointer禁止随着Y轴的上下滚动。当鼠标在图表中移动时,X轴的axisPointer会保持在原始位置,不会跟随鼠标的上下移动。 需要注意的是,以上方法只是禁止了随着Y轴上下滚动,而不会影响其他轴的滚动。如果还想禁止其他轴的滚动,可以根据需要在link属性中进行设置。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值