解决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 相关文章推荐
jQuery窗口、文档、网页各种高度的精确理解
Jul 02 Javascript
javascript数组详解
Oct 22 Javascript
JS代码防止SQL注入的方法(超简单)
Apr 12 Javascript
三种带箭头提示框总结实例
Jun 14 Javascript
jQuery事件处理的特征(事件命名机制)
Aug 23 Javascript
利用AngularJs实现京东首页轮播图效果
Sep 08 Javascript
JavaScript结合HTML DOM实现联动菜单
Apr 05 Javascript
基于JavaScript中标识符的命名规则介绍
Jan 06 Javascript
JS防抖和节流实例解析
Sep 24 Javascript
Javascript中的this,bind和that使用实例
Dec 05 Javascript
es6数组的flat(),flatMap()函数用法实例分析
Apr 18 Javascript
threejs太阳光与阴影效果实例代码
Apr 05 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
星际争霸 Starcraft 编年史
2020/03/14 星际争霸
ADODB结合SMARTY使用~超级强
2006/11/25 PHP
php 高性能书写
2010/12/11 PHP
php使用ffmpeg向视频中添加文字字幕的实现方法
2016/05/23 PHP
Adnroid 微信内置浏览器清除缓存
2016/07/11 PHP
php安装扩展mysqli的实现步骤及报错解决办法
2017/09/23 PHP
使用PHP反射机制来构造&quot;CREATE TABLE&quot;的sql语句
2019/03/21 PHP
EasyUI的treegrid组件动态加载数据问题的解决办法
2011/12/11 Javascript
js 链式延迟执行DOME
2012/01/04 Javascript
js触发onchange事件的方法说明
2014/03/08 Javascript
基于jquery实现的文字向上跑动类似跑马灯的效果
2014/06/17 Javascript
js与css实现弹出层覆盖整个页面的方法
2014/12/13 Javascript
JS实现兼容性好,带缓冲的动感网页右键菜单效果
2015/09/18 Javascript
jQuery插件AjaxFileUpload实现ajax文件上传
2016/05/05 Javascript
基于JavaScript FileReader上传图片显示本地链接
2016/05/27 Javascript
微信小程序链接传参并跳转新页面
2016/11/29 Javascript
20行js代码实现的贪吃蛇小游戏
2017/06/20 Javascript
javascript变量提升和闭包理解
2018/03/12 Javascript
Java设计中的Builder模式的介绍
2018/03/22 Javascript
vue 动态组件(component :is) 和 dom元素限制(is)用法说明
2020/09/04 Javascript
Python增量循环删除MySQL表数据的方法
2016/09/23 Python
Python3正则匹配re.split,re.finditer及re.findall函数用法详解
2018/06/11 Python
Django中间件拦截未登录url实例详解
2019/09/03 Python
使用Python和百度语音识别生成视频字幕的实现
2020/04/09 Python
基于Keras 循环训练模型跑数据时内存泄漏的解决方式
2020/06/11 Python
使用Python爬取Json数据的示例代码
2020/12/07 Python
解决CSS3的opacity属性带来的层叠顺序问题
2016/05/09 HTML / CSS
24个canvas基础知识小结
2014/12/17 HTML / CSS
国外最大的眼镜网站:Coastal
2017/08/09 全球购物
P D PAOLA意大利官网:西班牙著名的珠宝首饰品牌
2019/09/24 全球购物
爱牙日活动总结
2014/08/29 职场文书
2014卖家双十一活动策划书
2014/09/29 职场文书
个人房屋转让协议书范本
2014/10/26 职场文书
庆祝教师节新闻稿
2015/07/17 职场文书
Python实现生活常识解答机器人
2021/06/28 Python
MySQL导致索引失效的几种情况
2022/06/25 MySQL