修改图中X轴的比例
Modifying the scale of X axis in graph
我正在尝试在 Stata 中绘制图表。
这是我的代码:
scatter logpgp95 avexpr || lfit logpgp95 avexpr, ylabel(4(2)10) xscale(range(4 10))
它给了我这样的图表:
我想要一个 X 轴从 4 开始到 10 的图表,4 应该在 2 所在的位置。
类似这样的东西(例如):
如果我只使用 xlabel
代码:
scatter logpgp95 avexpr || lfit logpgp95 avexpr, ylabel(4(2)10) xlabel(4(2)10)
我明白了:
问题是我不希望 4 离起点那么远。
您的问题不可重现。
我模拟了一些 x 轴范围从 3.5 到 10 的数据。即使不询问 x 轴标签也显示为 4 6 8 10 并且左侧没有巨大的 space。
clear
set obs 100
set seed 2803
range x 3.5 10
gen y = x + rnormal()
scatter y x || lfit y x
我不得不猜测您的真实代码与我们看到的不同。反过来,我们需要您的数据来检查发生了什么。
我的猜测是 avexpr
的值低于 2,而 logpgp95
的相同观察值缺失。在这种情况下,图形仍会将该值作为 x 轴的最小值,但不会绘制它,因为它没有 y 值。
试试这个:
scatter logpgp95 avexpr if !missing(logpgp95, avexpr) || lfit logpgp95 avexpr, ylabel(4(2)10)
我正在尝试在 Stata 中绘制图表。 这是我的代码:
scatter logpgp95 avexpr || lfit logpgp95 avexpr, ylabel(4(2)10) xscale(range(4 10))
它给了我这样的图表:
我想要一个 X 轴从 4 开始到 10 的图表,4 应该在 2 所在的位置。
类似这样的东西(例如):
如果我只使用 xlabel
代码:
scatter logpgp95 avexpr || lfit logpgp95 avexpr, ylabel(4(2)10) xlabel(4(2)10)
我明白了:
问题是我不希望 4 离起点那么远。
您的问题不可重现。
我模拟了一些 x 轴范围从 3.5 到 10 的数据。即使不询问 x 轴标签也显示为 4 6 8 10 并且左侧没有巨大的 space。
clear
set obs 100
set seed 2803
range x 3.5 10
gen y = x + rnormal()
scatter y x || lfit y x
我不得不猜测您的真实代码与我们看到的不同。反过来,我们需要您的数据来检查发生了什么。
我的猜测是 avexpr
的值低于 2,而 logpgp95
的相同观察值缺失。在这种情况下,图形仍会将该值作为 x 轴的最小值,但不会绘制它,因为它没有 y 值。
试试这个:
scatter logpgp95 avexpr if !missing(logpgp95, avexpr) || lfit logpgp95 avexpr, ylabel(4(2)10)