2013-01-11 36 views
3

I have a dataset具有製造單位的唯一ID,其產出的工業分類(CAT)和每個單位使用的人數(EMP)。我想以圖形方式顯示EMP因CAT而異,即就業規模一般因單位產出的種類而異。我試圖通過中間EMP安排箱線圖:R:可視化大量組別間的差異

a = read.csv("/filepath/plot.csv", header=T, stringsAsFactors=F) 
bymedian = with(a, reorder(CAT, log(as.numeric(as.character(EMP))), median)) 
boxplot(log(EMP) ~ bymedian, data=a, horizontal=F, notch=T, pch=1, cex=.25, col="gray95", boxwex=.25, las=2, outline=F) 
pch=1, cex=.25, col="gray95", boxwex=.25, las=2, outline=F) 

的問題是,由於大量的類(400+),劇情變得非常混亂。有沒有更清晰的方式來展示我想要做的事情?

回答

3

使用ggplot2你能證明你正在嘗試用scale_x_discrete

enter image description here

library(ggplot2) 
a$bymedian = with(a, reorder(CAT, log(EMP), median)) 
p <- ggplot(a,aes(y=log(EMP),x=bymedian))+ 
    geom_boxplot() 

breaks <- levels(a$bymedian)[seq(1,nlevels(a$bymedian),20)] 
p %+% scale_x_discrete(breaks = breaks, labels = breaks) 
+0

喜agstudy做...我得到這個錯誤:「錯誤seq.default(1, nlevels(a $ bymedian),20): 錯誤登錄'by'參數「 – user702432

+0

我通過中性添加到您的data.frame a。我更新了我的答案 – agstudy

+0

非常好。非常感謝。 – user702432