问题点:开发过程中,发现使用循环独立出的折线图,因为y轴文字显示的长短不同左侧y轴会有不同的偏移,如下图所示
解决方式(仅根据当前项目情况处理):由于当前项目数据库存储数据最大数为整数32位,小数8位,所以限定时根据41位字符做的处理。当数字不足41位时,在前方填充对应的空格;当大于41位时就只截取0-41的整数 + 小数显示,放置位置如下所示
yAxis: {
axisLabel: {
formatter: function(value) {
//将数值转换成字符串类型
let text = value.toString();
// 数据库最大小数8位,整数32位 所以这边使用判定41位
let strLength = text.length;
let differenceVlue = 41 - strLength;
if (differenceVlue > 0) {
// 在字符串之前添加 differenceVlue个空格作为占位
return text.padStart(differenceVlue);
} else {
//保留前面 42 个字符并省略后面的部分
return text.substring(0, 41);
}
},
//避免自动间断显示
interval: 0
},
},
// grid 设定部分,根据是否有数据显示判定时固定尺寸 还是动态显示,其中150的尺寸是根据对应项目显示41位数字时页面显示时的宽度
grid: {
left: 根据特定项目显示的图表数据判定(dataList.leng ? "0%" : 150),
right: 150,
bottom: "11%",
containLabel: true
},
解决后效果如图所示: