解决echarts中横坐标值显示不全(自动隐藏)问题


Posted in Javascript onJuly 20, 2020

echarts中,横轴数据如果非常多,会自动隐藏一部分数据,我们可以通过属性interval来进行调整。

如下图,当横轴时间为13天时,echarts会自动隔天显示

解决echarts中横坐标值显示不全(自动隐藏)问题

如果我们想显示全,则需要在xAxis 属性加上axisLabel:{interval: 0}

"xAxis":[{"data":["2015-5-13","2015-5-14","2015-5-15","2015-5-16","2015-5-17","2015-5-18","2015-5-19","2015-5-20","2015-5-21","2015-5-22","2015-5-23","2015-5-24","2015-5-25"],
 "type":"category",
 "axisLabel":{
 interval: 0
 }
}],

效果如下:

解决echarts中横坐标值显示不全(自动隐藏)问题

查看echarts官网的文档,可以得知:

解决echarts中横坐标值显示不全(自动隐藏)问题

补充知识:Echarts X轴内容过长自动隐藏,鼠标移动上去显示全部

使用echarts图表做页面展示的时候,当X轴内容过长时,之前一直用的 '\n' 换行(将字符串根据需要分成两行来展示),这样有很大的局限性(如内容过长的话 分成两行也放不下,而且也会影响美观),后来发现可以通过设置自动隐藏,鼠标移动上去显示全部名称的方法 来做,效果会更好。

1. 首先在 x轴上添加 triggerEvent: true。如下红色部分:

xAxis: {
data: result.nameList,
silent: false,
triggerEvent: true,
axisLine: {
onZero: true,
show: true,
lineStyle: {
color: '#90979c' // x 轴线最下面的横坐标线的颜色
}
},
splitLine: {show: false},
splitArea: {show: false},
axisLabel: {
interval: 0,//设置横坐标为斜
rotate: 30,//文字倾斜角度
formatter: function (value) {
if (value.length > 10) {
value = value.substring(0, 9) + "..";
}
return value;
},
textStyle: {
color: '#666',
fontSize: '12'
}
},
},

2. 自定义x轴上显示的内容长度。如上面代码段中的蓝色部分。

3. 自定义一个 鼠标悬浮事件方法,并调用。

function extensionOne(myChart) {
 var id = document.getElementById("extensionOne");
 //判断是否创建过div框,如果没有创建过,则创建。(创建时,默认隐藏)
 if (!id) {
  var div = "<div id = 'extensionOne' sytle=\"display:none\"></div>";
  $('html').append(div);
 }

 var arrow_left = '20px';
 //鼠标悬浮事件
 myChart.on('mouseover', function (params) {
  if (params.componentType != "xAxis") {
   return;
  }

  //设置div框样式,并为其填充值。
  $('#extensionOne').css({
   "position": "absolute",
   "color": "#90979c",
   // "border": "solid 0px white",
   "font-family": "Arial",
   "font-size": "14px",
   "padding": "5px",
   "display": "inline"
  }).text(params.value);
  var xx_text = params.event.offsetX - 35;
  arrow_left = xx_text;

  $("#talentDemandDistribution").mousemove(function (event) {
   // console.log("X轴坐标:" + event.pageX + " Y轴坐标:" + event.pageY);
   var xx = event.pageX - 30;
   var yy = event.pageY + 10;
   $('#extensionOne').css('top', yy).css('left', xx);
  });
 });

 myChart.on('mouseout', function (params) {
  $('#extensionOne').css('display', 'none');
 });
}
{
 ...
 ...
 var chart = echarts.init(document.getElementById('talentDemandDistribution'));
 chart.setOption(option);

 //在echarts 初始化完成后,调用自定义的鼠标悬浮事件方法
 extensionOne(chart);
}

到此结束!

以上这篇解决echarts中横坐标值显示不全(自动隐藏)问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript高级程序设计
Dec 29 Javascript
来自qq的javascript面试题
Jul 24 Javascript
载入jQuery库的最佳方法详细说明及实现代码
Dec 28 Javascript
JS网页在线获取鼠标坐标值的方法
Feb 28 Javascript
浅析JavaScript 调试方法和技巧
Oct 22 Javascript
jQuery实现滑动页面固定顶部显示(可根据显示位置消失与替换)
Oct 28 Javascript
JavaScript获取各大浏览器信息图示
Nov 20 Javascript
纯html+css+javascript实现楼层跳跃式的页面布局(实例代码)
Oct 25 Javascript
layui 实现二级弹窗弹出之后 关闭一级弹窗的方法
Sep 18 Javascript
vue请求服务器数据后绑定不上的解决方法
Oct 30 Javascript
微信小程序实现滚动加载更多的代码
Dec 06 Javascript
jQuery实现手风琴效果(蒙版)
Jan 11 jQuery
解决Echarts2竖直datazoom滑动后显示数据不全的问题
Jul 20 #Javascript
echarts实现获取datazoom的起始值(包括x轴和y轴)
Jul 20 #Javascript
使用 Github Actions 自动部署 Angular 应用到 Github Pages的方法
Jul 20 #Javascript
如何实现echarts markline标签名显示自己想要的
Jul 20 #Javascript
在Echarts图中给坐标轴加一个标识线markLine
Jul 20 #Javascript
jquery实现简单拖拽效果
Jul 20 #jQuery
在vue中使用echarts(折线图的demo,markline用法)
Jul 20 #Javascript
You might like
php检测数组长度函数sizeof与count用法
2014/11/17 PHP
PHP计算数组中值的和与乘积的方法(array_sum与array_product函数)
2016/04/01 PHP
php生成Android客户端扫描可登录的二维码
2016/05/13 PHP
PHP call_user_func和call_user_func_array函数的简单理解与应用分析
2019/11/25 PHP
php数值计算num类简单操作示例
2020/05/15 PHP
固定网页背景图同时保持图片比例的思路代码
2013/08/15 Javascript
JSON传递bool类型数据的处理方式介绍
2013/09/18 Javascript
javascript中的事件代理初探
2014/03/08 Javascript
jQuery使用元素属性attr赋值详解
2015/02/27 Javascript
浅析2种JavaScript继承方式
2015/12/04 Javascript
jQuery定义插件的方法
2015/12/18 Javascript
整理AngularJS框架使用过程当中的一些性能优化要点
2016/03/05 Javascript
js实现tab切换效果
2017/02/16 Javascript
jQuery插件Echarts实现的双轴图效果示例【附demo源码下载】
2017/03/04 Javascript
angular中不同的组件间传值与通信的方法
2017/11/04 Javascript
js提取中文拼音首字母的封装工具类
2018/03/12 Javascript
vue实现导航标题栏随页面滚动渐隐渐显效果
2020/03/12 Javascript
JS实现省市县三级下拉联动
2020/04/10 Javascript
VUE 实现element upload上传图片到阿里云
2020/08/12 Javascript
vue实现单一筛选、删除筛选条件
2020/10/26 Javascript
python之模拟鼠标键盘动作具体实现
2013/12/30 Python
BP神经网络原理及Python实现代码
2018/12/18 Python
详解使用PyInstaller将Pygame库编写的小游戏程序打包为exe文件
2019/08/23 Python
Python datetime包函数简单介绍
2019/08/28 Python
Python 装饰器@,对函数进行功能扩展操作示例【开闭原则】
2019/10/17 Python
python中resample函数实现重采样和降采样代码
2020/02/25 Python
Keras自定义实现带masking的meanpooling层方式
2020/06/16 Python
python如何变换环境
2020/07/21 Python
荷兰最大的多品牌男装连锁店:Adam Brandstore
2019/12/31 全球购物
求职信模板标准格式范文
2014/02/23 职场文书
2014法制宣传日活动总结
2014/07/09 职场文书
市场营销毕业求职信
2014/08/07 职场文书
股东大会通知
2015/04/24 职场文书
六一儿童节主持开场白
2015/05/28 职场文书
庆祝教师节新闻稿
2015/07/17 职场文书
vue2实现provide inject传递响应式
2021/05/21 Vue.js