当前位置: 首页 > news >正文

微网站中定位功能怎么做的定制网络流量监控软件

微网站中定位功能怎么做的,定制网络流量监控软件,盘锦网络推广,网站建设 管理系统开发问题描述 使用echarts折线图和柱状图展示数据时#xff0c;如果数据差异值较大#xff0c;会导致显示图形差异过大#xff0c;图表不美观。 如这一组数据[2000000, 200, 0.1, 20, 0, -10, -3000]#xff0c;渲染出来的效果如下图#xff1a; 可以看到由于最大值和最小值差…问题描述 使用echarts折线图和柱状图展示数据时如果数据差异值较大会导致显示图形差异过大图表不美观。 如这一组数据[2000000, 200, 0.1, 20, 0, -10, -3000]渲染出来的效果如下图 可以看到由于最大值和最小值差异过大导致过小的值柱子显示不出来数据的波动趋势不明显。 当前需要解决的问题是如何体现数据差异性让小数值柱子也能显示出来。 解决方案 使用对数轴yAxis. type“log”)适用于对数数据可以解决数据差异过大的问题。但对数轴只适用于data0的情况。 如数据barDatas [2000000, 200, 0.1, 20, 3,3, 3000] 如果对数轴中的数组数据出现0或者负数情况就会造成错误渲染。 试了很多办法都无法解决这个问题最后采取了多个grid多轴的办法。 可以通过grid来划分多个网格区域然后让正数和负数柱状图分别在在不同的区域展现。 如const barDatas [2000000, 200, 0.1, 20, 0, -10, -3000] 流程展示 将barDatas数组拆分为正数数组负数数组 设置三个grid分别为用于展示正数负数数据以及底部X轴 正负数数据网格区域y轴为yAxis. type“log”X轴网格区数数据区域yAxis. type“value” 正数柱状图series.data只展示大于0的数据其余为nullbarDatas.map(item item 0 ? item : null); 负数柱状图series.data只展示小于0的数据并展示为绝对值其余为nullbarDatas.map(item item 0 ? Math.abs(item): null) 设置负数的y轴yAxis.inversetrue让Y轴绕X轴上下翻转并配置y轴标签显示yAxis.axisLabel.formatter(val) val 1 ? 0 : -${val} 其中要解决的问题是 1解决起始0对齐的问题 因为对数轴的数据不能为0所以需要设置上下yAxis的min为1再通过yAxis.axisLabel.formatter将y轴的1改为0。 2小于1的数据柱子无高度。 需要设置barMinHeight最小高度同时改造小于1的数为1.01 这种方式能很好的解决数据差异过大的问题。 效果图附上 代码附上 !DOCTYPE html html langen styleheight: 100%headmeta charsetutf-8 /head script typetext/javascript srchttps://registry.npmmirror.com/echarts/5.5.0/files/dist/echarts.min.js/scriptbody styleheight: 100%; margin: 0div idcontainer stylewidth: 50%;height: 50%;border: 1px solid red;margin: 30px;/divscript typetext/javascriptvar dom document.getElementById(container);var myChart echarts.init(dom, null, {renderer: canvas,useDirtyRect: false});var app {};var option;// const barDatas [1000000, 20000000, 0.1, 20, 0, -10, -3000];// const barDatas [200000, -100];const barDatas [2000000, 200, 0.1, 20, 0, -10, -3000]option {color: [#3398DB],tooltip: {trigger: axis,axisPointer: {type: shadow},formatter: (params) {const { dataIndex } params[0]return ${城市${dataIndex 1}}${barDatas[dataIndex]}}},grid: [{right: 20,left: 80,top: 30,bottom: 50%,containLabel: false,}, {right: 20,left: 80,top: 50%,bottom: 30,containLabel: false,show: false}, {right: 20,left: 80,top: 50%,bottom: 30,containLabel: false,show: false}],xAxis: [{type: category,gridIndex: 0,show: false,},{type: category,show: false,gridIndex: 1,},{type: category,interval: 0,gridIndex: 2,data: barDatas.map((item, index) 城市${index 1})},],yAxis: [{type: log,gridIndex: 0,min: 1, // 设置y轴最小值axisLabel: {formatter: (val) val 1 ? 0 : val}},{type: log,gridIndex: 1,inverse: true, //设置反向坐标让Y轴绕X轴上下翻转min: 1, // 设置y轴最小值axisLabel: {formatter: (val) val 1 ? 0 : -${val}}},{type: value,gridIndex: 2,show: false,},],series: [{name: 正数,xAxisIndex: 0,yAxisIndex: 0,type: bar,data: barDatas.map(item item 0 ? item 1 ? item : 1.01 : null), // 正数柱状图series.data只展示大于0的数据barMinHeight: 1.5,// 最小高度},{name: 负数,type: bar,xAxisIndex: 1,yAxisIndex: 1,data: barDatas.map(item item 0 ? Math.abs(item) 1 ? Math.abs(item) : 1.01 : null), // 负数柱状图eries.data只展示小于0的数据barMinHeight: 1.5, // 最小高度},{name: x轴,xAxisIndex: 2,yAxisIndex: 2,type: bar,show: false,data: barDatas.map(item null),},],};if (option typeof option object) {myChart.setOption(option);}window.addEventListener(resize, myChart.resize);/script /body/html
http://www.hkea.cn/news/14294749/

相关文章:

  • logo网站有哪些阿里云win服务器怎么做网站
  • 旅游网站建设的目的与意义是什么意思大连华南网站建设
  • 广州比较好的网站建设公司西安做网站哪里价格低
  • 电脑做网站服务器需要什么软件沭阳网站开发
  • 美食网站首页wordpress交易平台主题
  • 网站建设合同解除函建设制作外贸网站的公司简介
  • 网站从哪几个方面维护广州做网站平台的企业
  • 做网站的标签及属性中文域名注册费用标准
  • 做外贸没有网站需要做毕业设计资料网站
  • vs 网站开发教程自己做网站打开是乱码
  • 佛山建站佛山网页设计营销型网站建设_做网站
  • 建设网站需要学什么WordPress瀑布流图片站
  • 郑州百度网站建设武威 网站建设
  • 快三网站开发长沙招聘信息2022
  • 视频播放网站开发的报告网站域名需icp备案
  • 如何不花钱开发网站小白学做搭建网站
  • 阿里云静态网站托管南宁市住房城乡建设厅网站
  • 电子商务网站建设实训目的淘宝网手机版
  • 广州海珠网站开发方案电商网站 建社区
  • 成都网站建设成都网络公司门户网站建设需要多少钱
  • 张家界做旅游网站seo网站建设技巧
  • 装修公司网站制作公司做企业网站的必要性
  • 三原网站建设个人如何申请网址
  • 做网站的需要注册商标吗吉林seo推广系统
  • 彩票网站wordpress模板西安市建设局网站
  • 厦门汽车充电站建设报备网站桂林象鼻山作文300字
  • 保定网站建设咨询哪个网站的域名到期直接注册
  • 国外特效网站免费特效模板下载
  • 网站网页区别是什么意思layui做网站
  • 网站制作域名是免费的吗网站建设中期怎么入账