解决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 相关文章推荐
经常用到的JavasScript事件的翻译
Apr 09 Javascript
基于JQuery的密码强度验证代码
Mar 01 Javascript
js报错 Object doesn't support this property or method的原因分析
Mar 31 Javascript
js 关于=+与+=日期函数使用说明(赋值运算符)
Nov 15 Javascript
js操作css属性实现div层展开关闭效果的方法
May 11 Javascript
javascript html5轻松实现拖动功能
Mar 01 Javascript
jQuery实现表格奇偶行显示不同背景色 就这么简单
Mar 13 Javascript
详解基于vue-cli配置移动端自适应
Jan 13 Javascript
vue项目持久化存储数据的实现代码
Oct 01 Javascript
vue组件之间的数据传递方法详解
Apr 19 Javascript
vue+moment实现倒计时效果
Aug 26 Javascript
JavaScript字符串转数字的简单实现方法
Nov 27 Javascript
解决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代码把全角数字转为半角数字
2007/12/10 PHP
PHP实现的分页类定义与用法示例
2017/07/05 PHP
PHP接入支付宝接口失效流程详解
2020/11/10 PHP
简单的无缝滚动程序-仅几行代码
2007/05/08 Javascript
cnblogs TagCloud基于jquery的实现代码
2010/06/11 Javascript
jQuery基础框架浅入剖析
2012/12/27 Javascript
JQuery实现的图文自动轮播效果插件
2015/06/19 Javascript
Vue.js 和 MVVM 的注意事项
2016/11/07 Javascript
利用Plupload.js解决大文件上传问题, 带进度条和背景遮罩层
2017/03/15 Javascript
vue实现微信分享朋友圈,发送朋友的示例讲解
2018/02/10 Javascript
bootstrap模态框关闭后清除模态框的数据方法
2018/08/10 Javascript
vue-cli3全面配置详解
2018/11/14 Javascript
bootstrap下拉分页样式 带跳转页码
2018/12/29 Javascript
vant-ui框架的一个bug(解决切换后onload不触发)
2020/11/11 Javascript
Python通过DOM和SAX方式解析XML的应用实例分享
2015/11/16 Python
Python使用中文正则表达式匹配指定中文字符串的方法示例
2017/01/20 Python
python sys.argv[]用法实例详解
2018/05/25 Python
详解Python3中的迭代器和生成器及其区别
2018/10/09 Python
python数据库操作mysql:pymysql、sqlalchemy常见用法详解
2020/03/30 Python
Python request操作步骤及代码实例
2020/04/13 Python
降低python版本的操作方法
2020/09/11 Python
python中xlrd模块的使用详解
2021/02/01 Python
HTML5 device access 设备访问详解
2018/05/24 HTML / CSS
美国著名的户外用品品牌:L.L.Bean
2018/01/05 全球购物
一道写SQL的面试题和答案
2013/11/19 面试题
如何利用XMLHTTP检测URL及探测服务器信息
2013/11/10 面试题
Java程序员面试90题
2013/10/19 面试题
大学生毕业的自我评价分享
2014/01/02 职场文书
档案检查欢迎词
2014/01/13 职场文书
HR求职自荐信范文
2014/06/21 职场文书
2014第二批党员干部对照“四风”找差距检查材料思想汇报
2014/09/18 职场文书
小学六一儿童节活动总结
2015/05/05 职场文书
《穷人》教学反思
2016/02/19 职场文书
mysql 8.0.24 安装配置方法图文教程
2021/05/12 MySQL
SpringBoot2零基础到精通之数据库专项精讲
2022/03/22 Java/Android
ant design vue的form表单取值方法
2022/06/01 Vue.js