【发布时间】:2013-02-07 10:54:37
【问题描述】:
所以我有一个整数向量quotes,我希望通过绘制数据点的频率并使 x 和 y 轴均为对数来查看它是否遵守幂律分布。但是,我不太确定如何在 R 中完成此操作。我目前可以使用
hist(quotes, breaks = max(quotes))
但轴都是线性的。
【问题讨论】:
所以我有一个整数向量quotes,我希望通过绘制数据点的频率并使 x 和 y 轴均为对数来查看它是否遵守幂律分布。但是,我不太确定如何在 R 中完成此操作。我目前可以使用
hist(quotes, breaks = max(quotes))
但轴都是线性的。
【问题讨论】:
可能有更好的方法来做到这一点,但这(基本上)有效:
data = rnorm(1000,0,1)
r <- hist(log(data))
plot(r$breaks[-1],log(r$counts))
编辑:更好的解决方案:
r <- hist(data)
plot(r$breaks[-1], r$counts, log='xy', type='h')
# or alternatively:
barplot(r$counts, log="y", col="white", names.arg=r$breaks[-1])
条形图版本没有转换后的 x 轴,原因会在您尝试使用转换后的 x 轴时变得清楚。
【讨论】:
type='h' 将其制成细条形图。另外,我在第二个版本中省略了 $breaks,但我认为您仍然想要它们。修改了我的回复。