我有以下带有以下代码的数据集,该代码在ggplot2中生成所需的图形。我想按组在x轴上标记PTID,以便它显示ptid的显示方式以及它们所在的组。
PTID Group variable value
1 subject1 Group 1 Bio.V3.B 43
2 subject2 Group 1 Bio.V3.B 7410
3 subject3 Group 2 Bio.V3.B 13227
4 subject4 Group 2 Bio.V3.B 4832
5 subject5 Group 3 Bio.V3.B 205
6 subject6 Group 3 Bio.V3.B 24899
1 subject1 Group 1 Bio.V3.C 496
2 subject2 Group 1 Bio.V3.C 5932
3 subject3 Group 2 Bio.V3.C 24093
4 subject4 Group 2 Bio.V3.C 85
5 subject5 Group 3 Bio.V3.C 9503
6 subject6 Group 3 Bio.V3.C 18249
ggplot(data=meltedwk28v3, aes(x=PTID, y=value, fill=variable)) +
geom_bar(width= .5, colour="black", stat="identity", #barwidth
position=position_dodge(width=.7), #gapwidth
size=.2) + # Thinner lines
scale_fill_hue(name="Bio-V3 Clade") + # Set legend title
xlab("PTID") + ylab("MFI") + # Set axis labels
ggtitle("Wk28 Bio-V3 MFI") + # Set title
theme_classic() + theme(axis.text.x = element_text(angle=90, hjust=0, vjust=0)) #Themes
谢谢!
最佳答案
一种可能性是将“ PTID”和“组”之间的interaction
用作x
变量:
ggplot(data = df, aes(x = interaction(PTID, Group, sep = " "), y = value, fill = variable)) +
geom_bar(width= 0.5, colour="black", stat = "identity",
position = position_dodge(width = 0.7),
size = 0.2) +
xlab("PTID") + ylab("MFI") +
ggtitle("Wk28 Bio-V3 MFI") +
theme_classic() +
theme(axis.text.x = element_text(angle = 90, hjust = 0, vjust = 0))
关于r - 按组标记X轴值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27891049/