2010-11-10 157 views
2

我有一个大型数据集,其中包含讨论板上线程的使用寿命。我想一个柱状图,显示寿命的分布,所以我这样做:如何在R中为直方图的y轴使用对数刻度?

dall <- read.csv("lifespan.csv") 
colnames(dall) <- c("thread.id", "seconds.alive", "start.time") 
hist(dall$seconds.alive) 

与产生此硬盘读取图片: http://dl.dropbox.com/u/285483/tmp/screenshot297.png

我的问题是 一)正在改变y轴的日志规模的一个好方法,使其更具可读性?显然some people think is a bad idea要将y轴更改为日志。

b)我该怎么做?

+2

鉴于这条从零开始,和日志(0)是负无穷大,你想图表中显示什么? – hadley 2010-11-10 21:59:43

+0

讨论了类似的东西@ CrossValidated:http://stats.stackexchange.com/questions/1764/what-are-alternatives-to-broken-axes – 2010-11-11 09:19:15

回答

4

我会尝试使用hist(log10(dall$seconds.alive))来代替。

也可以尝试指定breaks=100或更小/大数目:

hist(log10(dall$seconds.alive), breaks=100) 
+1

+1好点,日志秒肯定比日志记录更好 – VitoshKa 2010-11-10 22:43:05

+2

不是有效地将对数标度应用于** x **(而不是y)轴? – 2011-08-12 22:04:06