[英]How to change the order of x-axis in multiple boxplots in R
我正在嘗試更改此箱圖中的x軸順序。
[現在的訂單是放大鏡,顯微鏡和視頻,我想將其更改為顯微鏡,放大鏡和視頻]
數據框示例如下所示
Label Mental Physical Temporal Performance Effort Frustration sum
Microscope 10 10 10 10 10 10 60
Microscope 10 10 10 10 10 10 60
Loupe 20 20 20 20 20 20 120
Loupe 20 20 20 20 20 20 120
Video 15 15 15 20 20 20 105
Video 15 15 15 20 20 20 105
這是我現在擁有的boxplot boxplot1
這是我的ggplot代碼
mydata <- read.csv("boxplotyiyu2.csv",header=TRUE)
dfm <- melt(mydata, id.var = "Label")
ggplot(data = dfm, aes(x=variable, y=value)) + geom_boxplot(aes(fill=Label),width=0.5)+ xlab("Demand") + ylab("NASA-TLX Scores")
我已經嘗試過了,但是結果不正確。
dfm$variable <- factor(dfm$variable,levels = c("Microscope","Loupe","Video"))
另一個問題是如何修改多個箱形圖的y軸。 我將這七個箱形圖放在一起,但是我想為每個小圖更改y軸。 boxplot2
(數據框與上面的數據框相似,只是將角度,物理...替換為角度數據)
我的代碼是
df.m <- melt(mydata, id.var = "Label")
p <- ggplot(data = df.m, aes(x=variable, y=value))
p <- p + geom_boxplot(aes(fill=Label))
p <- p + facet_wrap( ~ variable, scales="free")
p <- p + xlab("Angle") + ylab("Degree")
請幫我一個忙! 真的很感激!
您將需要使用factor
函數重新定義因素的順序。
#Sample data
Label<-c("Microscope", "Microscope", "Loupe", "Loupe", "Video", "Video")
mydata<-data.frame(Label)
#print out
levels(mydata$Label)
mydata$Label<-factor(mydata$Label, levels=c("Microscope", "Loupe", "Video"))
#print out
levels(mydata$Label)
更多信息請參見該cookbook-r.com: http://www.cookbook-r.com/Manipulating_data/Changing_the_order_of_levels_of_a_factor/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.