解决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 相关文章推荐
js下弹出窗口的变通
Apr 18 Javascript
一个刚完成的layout(拖动流畅,不受iframe影响)
Aug 17 Javascript
jquery 图片 上一张 下一张 链接效果(续篇)
Apr 20 Javascript
js取float型小数点后两位数的方法
Jan 18 Javascript
教你如何使用PHP输出中文JSON字符串
May 22 Javascript
jQuery循环遍历子节点并获取值的方法
Apr 14 Javascript
JS实现消息来时让网页标题闪动效果的方法
Apr 20 Javascript
Web Uploader文件上传插件使用详解
May 10 Javascript
javascript中setAttribute兼容性用法分析
Dec 12 Javascript
深入浅出vue图片路径的实现
Sep 04 Javascript
JS实现旋转木马轮播图
Jan 01 Javascript
vue实现简单数据双向绑定
Apr 28 Vue.js
解决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
smarty中js的调用方法示例
2014/10/27 PHP
yii2高级应用之自定义组件实现全局使用图片上传功能的方法
2016/10/08 PHP
PHP实现的回溯算法示例
2017/08/15 PHP
PHP7原生MySQL数据库操作实现代码
2020/07/03 PHP
一个简单的JavaScript 日期计算算法
2009/09/11 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(二)人物行走的实现
2013/01/23 Javascript
Json实现异步请求提交评论无需跳转其他页面
2014/10/11 Javascript
JavaScript实现的字符串replaceAll函数代码分享
2015/04/02 Javascript
jQuery实现鼠标经过提示信息的地图热点效果
2015/04/26 Javascript
JS实现弹性漂浮效果的广告代码
2015/09/02 Javascript
jQuery与Ajax以及序列化
2016/02/01 Javascript
jq stop()和:is(:animated)的用法及区别(详解)
2017/02/12 Javascript
AngularJS前端页面操作之用户修改密码功能示例
2017/03/27 Javascript
Angular.JS中的指令引用template与指令当做属性详解
2017/03/30 Javascript
详解基于 axios 的 Vue 项目 http 请求优化
2017/09/04 Javascript
angularjs实现简单的购物车功能
2017/09/21 Javascript
基于JS实现web端录音与播放功能
2019/04/17 Javascript
解决Layui中templet中a的onclick参数传递的问题
2019/09/20 Javascript
vue-cli脚手架的.babelrc文件用法说明
2020/09/11 Javascript
JavaScript实现前端倒计时效果
2021/02/09 Javascript
[05:06]TI4西雅图DOTA2前线报道 海涛密探LGD训练
2014/07/09 DOTA
Python基于百度AI的文字识别的示例
2018/04/21 Python
python 读取.csv文件数据到数组(矩阵)的实例讲解
2018/06/14 Python
基于 Django 的手机管理系统实现过程详解
2019/08/16 Python
tensorflow基于CNN实战mnist手写识别(小白必看)
2020/07/20 Python
Python字典取键、值对的方法步骤
2020/09/30 Python
英国性能汽车零件和发动机配件在线:Maxpeedingrods
2019/11/05 全球购物
亲戚结婚的请假条
2014/02/11 职场文书
社区爱国卫生月活动总结
2014/06/30 职场文书
乡镇党委书记第三阶段个人整改措施
2014/09/16 职场文书
2014年结对帮扶工作总结
2014/12/17 职场文书
教师党员自我评价2015
2015/03/04 职场文书
初中语文教学随笔
2015/08/15 职场文书
《彼得与狼》教学反思
2016/02/20 职场文书
Python爬虫之爬取哔哩哔哩热门视频排行榜
2021/04/28 Python
Mysql调整优化之四种分区方式以及组合分区
2022/04/13 MySQL