修改图中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)