不希望的结果显示ggplot boxplot

时间:2014-01-21 09:35:04

标签: r ggplot2

我正在绘制这些数据:

Day,Property,Violent
Mon,7.2,5.7
Tue,5,4.5
Wed,6.3,3.6
Thu,5.4,4
Fri,9.5,5.6
Sat,16,10.9
Sun,14.2,8.6

使用以下代码:

library(ggplot2)
library(reshape)
week <- read.csv("week.csv", header=TRUE)
data.melt <- melt(week,id="Day")

ggplot() +
geom_boxplot(aes(x=Day, y= value, fill= variable), 
             data= data.melt, position = position_dodge(width = .9))
  1. 为什么我的标记出现在图例上而不是出现在情节上?
  2. 如何在逻辑上重新订购星期一开始的星期几? 任何帮助将不胜感激

1 个答案:

答案 0 :(得分:1)

DF <- read.table(text="Day,Property,Violent
Mon,7.2,5.7
Tue,5,4.5
Wed,6.3,3.6
Thu,5.4,4
Fri,9.5,5.6
Sat,16,10.9
Sun,14.2,8.6", header=TRUE, sep=",")

#I would consider the weekdays ordered, so let's turn them into an ordered factor.
DF$Day <- ordered(as.character(DF$Day), as.character(DF$Day))

library(ggplot2)
library(reshape2)
data.melt <- melt(DF,id.vars="Day")

ggplot() +
  geom_boxplot(aes(x=Day, y= value, fill= variable), 
               data= data.melt, position = position_dodge(width = .9))

enter image description here

这很好用。你看不多,因为每盒只有一个值。如果你想真正看到颜色,你需要每天更多的值和变量。或者,您可以使用geom_point

ggplot() +
  geom_point(aes(x=Day, y= value, colour= variable), 
               data= data.melt, position = position_dodge(width = .9))

enter image description here