You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Stata合并x轴范围相同、y值长度不同的图表的对齐问题求解

Stata上下堆叠图表x轴等长的两种实现方案

核心通过控制单图绘图边距、y轴元素间距,配合graph combine的共用轴参数实现需求,两种方案均默认保证两张图x轴范围、长度完全一致。

需求(a):x轴等长、y轴刻度与标签间距统一,顶部图左侧自然留白

该方案下两张图的y轴刻度数值和y轴标签的间距固定,不会因为y轴数值位数变化而改变,顶部图因y轴数值位数更短,左侧会自动留出多余空白。
实现代码如下:

use http://www.stata-press.com/data/r13/wpi1.dta, clear
g wpi10 = wpi * 100 

* 两张图统一设置y轴刻度与标签间距、左侧绘图边距基准
twoway scatter wpi t, ylabel(, angle(0) labgap(2)) plotregion(margin(l=15))
graph save 1, replace

twoway scatter wpi10 t, ylabel(, angle(0) labgap(2)) plotregion(margin(l=15))
graph save 2, replace
    
* 合并时开启x轴共用,强制x轴范围、刻度完全一致
graph combine 1.gph 2.gph, cols(1) xcommon

参数说明:

  • labgap(2):固定y轴刻度数值和标签的间距,单位为Stata默认的图形间距单位
  • plotregion(margin(l=15)):固定绘图区域左侧预留边距,保证两张图的x轴绘图区域宽度一致
  • xcommon:强制合并的所有子图共用x轴的范围、刻度,避免x轴出现偏差

需求(b):x轴等长、上下两张图的y轴标签完全对齐

该方案下需要提前匹配下方图y轴数值需要的左侧宽度,给顶部图预留足够的y轴刻度左侧空白,保证上下两张图的y轴标签在同一竖直线上,下方图的y轴数值可正常向外拓展不会挤压x轴。
实现代码如下:

use http://www.stata-press.com/data/r13/wpi1.dta, clear
g wpi10 = wpi * 100 

* 顶部图预留足够左侧空白,匹配下方图y轴数值的宽度需求
twoway scatter wpi t, ylabel(, angle(0) labgap(2)) plotregion(margin(l=22))
graph save 1, replace

* 下方图使用相同的左侧边距设置
twoway scatter wpi10 t, ylabel(, angle(0) labgap(2)) plotregion(margin(l=22))
graph save 2, replace
    
* 合并时开启x轴共用,可通过ysize调整整体图形高度适配
graph combine 1.gph 2.gph, cols(1) xcommon ysize(8)

参数说明:

  • plotregion(margin(l=22))的数值可根据下方图y轴数值的位数灵活调整,位数越多对应数值越大,直到上下y轴标签完全对齐即可

内容的提问来源于stack exchange,提问作者rpickmans

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 03:36:04