如何在Excel中复现截图中的多轴对比图表?
如何在Excel中复现截图中的多轴对比图表?
嗨,我来帮你搞定在Excel里复现这个多轴对比图表的问题~
先理清楚你的图表元素和Excel数据的对应关系,避免搞混:
- 每行的左右端点(模拟轴的直线):对应表格里的
min(左侧)和max(右侧) - 黑色圆点:表格里的
last值(周期最后一天/周/月的数值) - 黄色矩形:表格里的
Current值(当前数值)
下面给你两种可行的实现方案,你可以根据自己的需求选:
方案一:单个XY散点图模拟“伪多轴”
Excel原生不支持给每行单独加Y轴,所以我们可以用数据缩放的方式来模拟这个效果,步骤如下:
- 处理数据缩放:
为了让所有行的min/max都能适配同一个图表的Y轴区间(比如我们选0-10的区间),给每行计算一个缩放系数:缩放系数 = 10 / (该行max - 该行min)
然后把每行的Current、last、min、max都转换成相对值:- 转换后min = 0
- 转换后max = 10
- 转换后last = (last - min) * 缩放系数
- 转换后Current = (Current - min) * 缩放系数
- 创建XY散点图:
- 插入空白XY散点图,把每行的min(转换后)和max(转换后)作为两个数据点,X轴设为行号(比如第1行X=1,第2行X=2),用直线连接这两个点,模拟每行的“轴”。
- 添加
last值的散点:把每行转换后的last值作为Y,行号作为X,把散点样式改成黑色实心圆点。 - 添加黄色矩形:根据转换后的Current值,插入黄色矩形,调整它的Y位置和高度,让它对应到Current的数值位置(如果想要自动更新,可以用单元格链接位置的功能,手动调整也能快速实现)。
- 小提示:这种方法适合各行数据区间差异不大的情况,不然缩放后可能会有视觉偏差。
方案二:多个独立小图表拼接(直观易操作,推荐)
这个方法完全匹配你想要的“每行一个独立轴”的效果,操作起来也更简单:
- 为单行数据创建小图表:
拿一行数据举例,比如第一行的min、max、last、Current:- 插入空白XY散点图,添加两个数据点:(X=1, Y=min) 和 (X=2, Y=max),用直线连接这两个点,这就是该行的“轴”。
- 添加
last值的散点:设置X=1.5,Y=last,把散点样式改成黑色实心圆点。 - 插入黄色矩形:调整矩形的X范围(1到2)和Y位置,让它对应
Current的数值位置,大小适配图表高度即可。
- 统一小图表格式:
给每个小图表去掉多余的坐标轴、网格线、图例,只保留我们需要的直线、散点和黄色矩形,让每个图表的尺寸、样式保持一致。 - 拼接图表:
把所有小图表垂直对齐排列,调整好间距,看起来就像每行一个独立的对比轴了,后期修改某行数据也可以单独调整对应图表,非常灵活。
备注:内容来源于stack exchange,提问作者Alexandros
相关产品推荐
相关产品推荐

