利用echart 做以特定数值为分界线的图表,下面的例子以1为分界线的例子
<script> var axisData = ["8","9","10","11","12","13","14","15","16","17","18"]; var yxisData = [0.26, 1.01, 1.17, 1.17, 0.77, 0.90, 3.03, 0.99, 1.19, 4.83, 1.57]; var yxisData0=[]; var yxisData1=[]; var interval; var maxy = Math.max.apply(null,yxisData); if(maxy <= 2){ interval=0.1; }else{ interval=0.2; } $.each(yxisData,function(index,item){ if(item >=1) { item -=1; yxisData1.push(item); yxisData0.push(1); } else { yxisData1.push(1-item); yxisData0.push(item); } }) option1 = { title : { text : '公司名称', }, legend: { data:['不均匀系数'], }, tooltip : { trigger: 'axis', axisPointer : { // 坐标轴指示器,坐标轴触发有效 type : 'shadow' // 默认为直线,可选为:'line' | 'shadow' }, formatter: function (params) { var tar; tar = params[1]; return tar.name + '<br/>' + tar.seriesName + ' : ' + (yxisData[tar.dataIndex]); } }, grid: {}, xAxis : [ { type : 'category', data : axisData } ], yAxis: {interval:interval, },// y轴不能删除 series: [ { name: '辅助', type: 'bar', stack: '总量', itemStyle: { normal: { barBorderColor: 'rgba(0,0,0,0)', color: 'rgba(0,0,0,0)' }, emphasis: { barBorderColor: 'rgba(0,0,0,0)', color: 'rgba(0,0,0,0)' } }, data:yxisData0 }, { name: '不均匀系数', type: 'bar', stack: '总量', data: yxisData1 }, ] }; var myChart1 = echarts.init(document.getElementById('barchart1'),theme); myChart1.setOption(option1); ObjectResize(myChart1.resize) function ObjectResize(fn){ if(window.addEventListener) { window.addEventListener("resize",fn,false); } else { window.attachEvent("onresize",fn) } } </script>