解决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 相关文章推荐
本地对象Array的原型扩展实现代码
Dec 04 Javascript
javascript (用setTimeout而非setInterval)
Dec 28 Javascript
js类式继承的具体实现方法
Dec 31 Javascript
瀑布流布局代码一例
Apr 11 Javascript
jQuery实现响应鼠标背景变化的动态菜单效果代码
Aug 27 Javascript
SublimeText自带格式化代码功能之reindent
Dec 27 Javascript
微信小程序  TLS 版本必须大于等于1.2问题解决
Feb 22 Javascript
AngularJS折叠菜单实现方法示例
May 18 Javascript
JavaScript EventEmitter 背后的秘密 完整版
Mar 29 Javascript
r.js来合并压缩css文件的示例
Apr 26 Javascript
微信小程序开发之tabbar图标和颜色的实现
Oct 17 Javascript
vue的注意规范之v-if 与 v-for 一起使用教程
Aug 04 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
异世界新番又来了,同样是从零开始,男主的年龄降到5岁
2020/04/09 日漫
PHP截取汉字乱码问题解决方法mb_substr函数的应用
2008/03/30 PHP
精美漂亮的php分页类代码
2013/04/02 PHP
php多个字符串替换成同一个的解决方法
2013/06/18 PHP
PHP生成条形码大揭秘
2015/09/24 PHP
Smarty模板语法详解
2019/07/20 PHP
JS去除字符串的空格增强版(可以去除中间的空格)
2009/08/26 Javascript
查看大图功能代码jquery版
2013/11/05 Javascript
JavaScript设计模式之原型模式(Object.create与prototype)介绍
2014/12/28 Javascript
JavaScript实现自动变换表格边框颜色
2015/05/08 Javascript
seajs加载jquery时提示$ is not a function该怎么解决
2015/10/23 Javascript
Bootstrap每天必学之进度条
2015/11/30 Javascript
又一款js时钟!transform实现时钟效果
2016/08/15 Javascript
[Bootstrap-插件使用]Jcrop+fileinput组合实现头像上传功能实例代码
2016/12/20 Javascript
bootstrap table分页模板和获取表中的ID方法
2017/01/10 Javascript
jQuery插件HighCharts绘制2D半圆环图效果示例【附demo源码下载】
2017/03/09 Javascript
NodeJS创建最简单的HTTP服务器
2017/05/15 NodeJs
微信小程序开发之改变data中数组或对象的某一属性值
2018/07/05 Javascript
VUE+Element环境搭建与安装的方法步骤
2019/01/24 Javascript
利用Vconsole和Fillder进行移动端抓包调试方法
2019/03/05 Javascript
在vue中使用inheritAttrs实现组件的扩展性介绍
2020/12/07 Vue.js
[40:17]2018DOTA2亚洲邀请赛 4.5 淘汰赛 LGD vs Liquid 第一场
2018/04/06 DOTA
python try except返回异常的信息字符串代码实例
2019/08/15 Python
pytorch中tensor张量数据类型的转化方式
2019/12/31 Python
Python 打印自己设计的字体的实例讲解
2021/01/04 Python
canvas实现图片马赛克的示例代码
2018/03/26 HTML / CSS
美国隐形眼镜零售商:LensPure
2019/03/10 全球购物
俄罗斯在线水暖商店:Perfecto.ru
2019/10/25 全球购物
优秀英语专业毕业生求职信
2013/11/23 职场文书
尽职尽责村干部自我鉴定
2014/01/23 职场文书
单位工作证明范文
2014/09/14 职场文书
酒店餐厅2014重阳节活动策划方案
2014/09/16 职场文书
公司收款委托书范本
2014/09/20 职场文书
群众路线教育实践活动对照检查材料
2014/09/22 职场文书
生日赠语
2015/06/23 职场文书
安全生产感想
2015/08/07 职场文书