最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

解决百度Echarts图表坐标轴越界的方法

来源:动视网 责编:小采 时间:2020-11-27 22:06:05
文档

解决百度Echarts图表坐标轴越界的方法

解决百度Echarts图表坐标轴越界的方法:Echarts是由百度提供的数据可视化解决方案, 可以让我们快速实现功能丰富的图表,官网链接 使用方法 1.引入echarts.min.js文件 下载echarts.min.js文件,下载地址 创建一个挂载节点 将数据展示到挂载节点 生成数据, 并将数据导入到option配置
推荐度:
导读解决百度Echarts图表坐标轴越界的方法:Echarts是由百度提供的数据可视化解决方案, 可以让我们快速实现功能丰富的图表,官网链接 使用方法 1.引入echarts.min.js文件 下载echarts.min.js文件,下载地址 创建一个挂载节点 将数据展示到挂载节点 生成数据, 并将数据导入到option配置


Echarts是由百度提供的数据可视化解决方案, 可以让我们快速实现功能丰富的图表,官网链接

使用方法

1.引入echarts.min.js文件

下载echarts.min.js文件,下载地址

创建一个挂载节点

 

将数据展示到挂载节点

生成数据, 并将数据导入到option配置对象中

 // 创建数据
 var base = +new Date(1968, 9, 3);
 var oneDay = 24 * 3600 * 1000;
 var date = [];

 var data = [Math.random() * 300];

 for (var i = 1; i < 20000; i++) {
 var now = new Date(base += oneDay);
 date.push([now.getFullYear(), now.getMonth() + 1, now.getDate()].join('/'));
 data.push(Math.round((Math.random() - 0.5) * 20 + data[i - 1]));
 }
 
 // 创建对象option
 option = {
 tooltip: {
 trigger: 'axis',
 position: function (pt) {
 return [pt[0], '10%'];
 }
 },
 title: {
 left: 'center',
 text: '大数据量面积图',
 },
 toolbox: {
 feature: {
 dataZoom: {
 yAxisIndex: 'none'
 },
 restore: {},
 saveAsImage: {}
 }
 },
 xAxis: {
 type: 'category',
 boundaryGap: false,
 data: date
 },
 yAxis: {
 type: 'value',
 boundaryGap: [0, '100%']
 },
 dataZoom: [{
 type: 'inside',
 start: 0,
 end: 10
 }, {
 start: 0,
 end: 10,
 handleIcon: 'M10.7,11.9v-1.3H9.3v1.3c-4.9,0.3-8.8,4.4-8.8,9.4c0,5,3.9,9.1,8.8,9.4v1.3h1.3v-1.3c4.9-0.3,8.8-4.4,8.8-9.4C19.5,16.3,15.6,12.2,10.7,11.9z M13.3,24.4H6.7V23h6.6V24.4z M13.3,19.6H6.7v-1.4h6.6V19.6z',
 handleSize: '80%',
 handleStyle: {
 color: '#fff',
 shadowBlur: 3,
 shadowColor: 'rgba(0, 0, 0, 0.6)',
 shadowOffsetX: 2,
 shadowOffsetY: 2
 }
 }],
 series: [
 {
 name:'模拟数据',
 type:'line',
 smooth:true,
 symbol: 'none',
 sampling: 'average',
 itemStyle: {
 color: 'rgb(255, 70, 131)'
 },
 areaStyle: {
 color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
 offset: 0,
 color: 'rgb(255, 158, 68)'
 }, {
 offset: 1,
 color: 'rgb(255, 70, 131)'
 }])
 },
 data: data
 }
 ]
 };

将option添加到挂载节点

// 将option数据挂载到main节点
echarts.init(document.getElementById('main')).setOption(option);

如何防止坐标轴越界

上方图表如果展示到移动版, 坐标轴可能部分无法显示

解决方法很简单,只需在option中加一个配置项即可

grid:{
 containLabel: true
 },

源码:

<!doctype html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <meta name="viewport"
 content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
 <meta http-equiv="X-UA-Compatible" content="ie=edge">
 <title>Echarts-Demo</title>
 <script src="./echarts.min.js"></script>
</head>
<body>
 <div id="main" style="width:100%;height:400px;"></div>
 <script>
 // 创建数据
 var base = +new Date(1968, 9, 3);
 var oneDay = 24 * 3600 * 1000;
 var date = [];

 var data = [Math.random() * 300];

 for (var i = 1; i < 20000; i++) {
 var now = new Date(base += oneDay);
 date.push([now.getFullYear(), now.getMonth() + 1, now.getDate()].join('/'));
 data.push(Math.round((Math.random() - 0.5) * 20 + data[i - 1]));
 }

 // 创建对象option
 option = {
 tooltip: {
 trigger: 'axis',
 position: function (pt) {
 return [pt[0], '10%'];
 }
 },
 title: {
 left: 'center',
 text: '大数据量面积图',
 },
 toolbox: {
 feature: {
 dataZoom: {
 yAxisIndex: 'none'
 },
 restore: {},
 saveAsImage: {}
 }
 },
 xAxis: {
 type: 'category',
 boundaryGap: false,
 data: date
 },
 yAxis: {
 type: 'value',
 boundaryGap: [0, '100%']
 },
 dataZoom: [{
 type: 'inside',
 start: 0,
 end: 10
 }, {
 start: 0,
 end: 10,
 handleIcon: 'M10.7,11.9v-1.3H9.3v1.3c-4.9,0.3-8.8,4.4-8.8,9.4c0,5,3.9,9.1,8.8,9.4v1.3h1.3v-1.3c4.9-0.3,8.8-4.4,8.8-9.4C19.5,16.3,15.6,12.2,10.7,11.9z M13.3,24.4H6.7V23h6.6V24.4z M13.3,19.6H6.7v-1.4h6.6V19.6z',
 handleSize: '80%',
 handleStyle: {
 color: '#fff',
 shadowBlur: 3,
 shadowColor: 'rgba(0, 0, 0, 0.6)',
 shadowOffsetX: 2,
 shadowOffsetY: 2
 }
 }],
 series: [
 {
 name:'模拟数据',
 type:'line',
 smooth:true,
 symbol: 'none',
 sampling: 'average',
 itemStyle: {
 color: 'rgb(255, 70, 131)'
 },
 areaStyle: {
 color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
 offset: 0,
 color: 'rgb(255, 158, 68)'
 }, {
 offset: 1,
 color: 'rgb(255, 70, 131)'
 }])
 },
 data: data
 }
 ],
 grid:{
 containLabel: true
 }
 };
 // 将option数据挂载到main节点
 echarts.init(document.getElementById('main')).setOption(option);

 </script>
</body>
</html>

小结:

上面实例有一个在线的版本,http://echarts.baidu.com/examples/editor.html?c=area-simple, 感兴趣可以打开网页, 体会一下各种配置项的用途

博主开始没有找到正确的解决方法, 导致走了弯路, 最后发现添加一个参数就能顺利解决, 这里分享给大家,希望沉迷开发的小伙伴, 能少走弯路

文档

解决百度Echarts图表坐标轴越界的方法

解决百度Echarts图表坐标轴越界的方法:Echarts是由百度提供的数据可视化解决方案, 可以让我们快速实现功能丰富的图表,官网链接 使用方法 1.引入echarts.min.js文件 下载echarts.min.js文件,下载地址 创建一个挂载节点 将数据展示到挂载节点 生成数据, 并将数据导入到option配置
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top