目前在改别人遗留的bug,需求:
宽度 自适应的情况下 展示不友好:宽度太大

上下不居中 需求 要 上下 无论是否 有内容 都要居中展示 以0刻度为标准

宽度 设置
series: [
{
name: ‘已付金额‘,
type: ‘bar‘,
stack: ‘one‘,
color:‘#7198d2‘,
itemStyle: itemStylet,
barCategoryGap:10,
data: data1,
barWidth:15 宽度15规定
},
{
name: ‘未付金额‘,
type: ‘bar‘,
stack: ‘one‘,
color:‘#f09266‘,
itemStyle: itemStylett,
barCategoryGap:10,
data: data2
}
]
高度调整
原理:给 y轴 设置 最大值 ,最小值,最大值和最小值 为 数据中 最大值的绝对值 这样 canvas就会基于 0刻度线居中
yAxis: {
axisLabel:{
formatter:function (value, index) {
if(value<0){
return -value;
}else{
return value;
}
}
},
min:-getMaxMin(data1,data2),
max:getMaxMin(data1,data2)
},
var data1 = [400,400,400,400];
var data2 = [-400,-6000,-600,-1000,];
var num=0;
function getAbcArr(data2) {
var arr=[];
$.each(data2,function (i, v) {
arr.push(Math.abs(v))
})
return arr
}
function getMaxMin(data1, data2) {
var arr=data1.concat(getAbcArr(data2));
return Math.max.apply(null,arr)
}
getMaxMin(data1,data2)
最后的效果图

原文:https://www.cnblogs.com/GoTing/p/11083850.html