如何将百分比刻度限制在首个Y轴正范围且仅显示正区域曲线?
解决方法
一、将第一个Y轴(左轴)限制在正刻度范围
直接给左轴配置添加min: 0,强制轴的起始值为0,确保所有刻度都落在正数区间:
y: { type: 'linear', position: 'left', stacked: true, min: 0, // 新增:锁定Y轴最小值为0,限制刻度在正范围 ticks: { stepSize: 1000, font: { size: 20, } } },
二、让折线仅显示正区域部分
最直接的方式是预处理折线数据源,把所有y值小于0的点替换为null——ECharts遇到null值会自动跳过绘制该段,自然只保留正数区域的曲线。
以下是数据处理示例(根据你的实际数据结构调整):
// 假设原始数据为数组,元素是数值或[x,y]坐标对 const filteredData = rawData.map(point => { if (typeof point === 'number') { return point >= 0 ? point : null; } else if (Array.isArray(point)) { return [point[0], point[1] >= 0 ? point[1] : null]; } return point; });
将处理后的filteredData传入对应的折线系列即可实现需求。
内容的提问来源于stack exchange,提问作者Joh Ann
相关产品推荐
相关产品推荐

