2014-08-30 44 views
0

我剛剛開始使用R編程。我正在使用RStudio進行考試,並且我必須以圖形方式表示一些數據集上的計算結果。 我有一個這樣的結構:R是一個非常簡單的直方圖嗎?

enter image description here

和我在想什麼做的是做一些直方圖與平均的每一行的3個值,與同爲中位數和截尾平均。

第一個問題:這是一種用圖形表示這種數據的正確方法嗎?或者有更好的情節。

第二個問題:可能有人給我的代碼來繪製的曲線圖與在x安飛士3個字符串(「大廳」,「R & d」,「ROE」)和在y軸上的刻度包括結果的值,以便使直方圖代表在投擲中的投資差異,並且獲得投球。

希望我已經清楚,如果我沒有指定相關的東西,請問我。

+1

問題是如果你把同一個圖放在一起,那麼像0.0084和6這樣的不同尺度的數字就不能從零中辨別出第一個數字......例如試試這個:barplot(t(as.matrix(yourDataFrame)),旁邊= TRUE)#用您的數據名稱替換yourDataFrame。框架 – digEmAll 2014-08-30 14:40:46

回答

0

回答問題1:直方圖的目的是顯示連續數據的密度或頻率。如果您想比較row.name列中3個類別的均值/中值/修剪均值,我建議使用條形圖。我不確定單個圖表中的均值/中值/修整均值是否與觀衆相一致,所以它可能是生成3個條形圖的理想選擇。

回答問題2:如果您打算使用多列數據比較row.name列中的3個類別,我建議使用box-plot。我意識到box-plot傳統上不包含mean,但是它是跨類別數據比較的最佳可視化之一。示例請參見r-bloggers.com/box-plot-with-r-tutorial

+0

沒有我的想法是:3個不同的圖表,一個用於平均值,一個用於中值,另一個用於修剪平均值。在每張圖中,我比較了大廳,研發和魚子的價值。順便說一句,謝謝你的回答,我會按照教程,希望它能幫助我。 – 2014-08-30 16:07:08

1

它聽起來像你想要做以下事情。隨着具有這種格式的CSV呼叫bar.csv數據:

Dept Mean Median Trimmed_Mean 
Lobby 0.008 0.0018 0.0058 
R & D 6.25 3.2  4.78 
ROE  19.08 16.66 16.276 

您可以使用library(ggplot2)library(reshape)和此處列出

dat.m<-read.csv("bar.csv") 
dat.m<-melt(dat.m,id.vars="Dept") 

ggplot(dat.m, aes(x = Dept, y = value,fill=variable)) + geom_bar(stat='identity')+ 
facet_wrap(~ Dept, ncol = 3,scales="free_y") #facet wrapped 

ggplot(dat.m, aes(x = Dept, y = value,fill=variable)) + geom_bar(stat='identity') 
#stacked bar 

的命令以顯示如下圖:

stacked facet stacked bar

正如zhaoy所說,一個歷史紀錄片工作無線原始數據(通常) - 並且您擁有的是摘要數據。此外,可以使用library(ggplot2)以產生這樣的箱線圖摘要圖表(使用GGPLOT2庫spray數據):

library(ggplot2) 
p<-qplot(spray,count,data=InsectSprays,geom='boxplot') 
p<-p+stat_summary(fun.y=mean,shape=1,col='red',geom='point') 
print(p) 

或者簡單地使用標準boxplot命令,使用相同的數據,與附加的功能,以顯示意思是:

boxplot(count ~ spray, data = InsectSprays, col = "lightgray") 
means <- tapply(InsectSprays$count,InsectSprays$spray,mean) 
points(means,col="red",pch=18)