我试图用ggplot绘制我的值,但ggplot不断重新编码我的轴。以下是我的输入文件外观的快照。我有超过50个样本。R程序 - 如何避免ggplot在x轴和y轴重新排序
INPUT.txt
Sample Effect Gene
TCGA-D1-A17D stop gained ACE
TCGA-B5-A0K4 stop gain CBLC
TCGA-AP-A052 frameshift variant BRIP1
这里是我的[R代码打造的“热图”
library(reshape)
library(ggplot2)
all_data<- read.table(INPUT.txt", sep= "\t", header = T)
all_data.m <- melt(all_data)
#here's my attempt to try to sort the figure , but i can only sort according to just one axis
all_data.m$Gene <- factor(all_data.m$Gene, levels = all_data.m$Gene[order(all_data.m$Sample)])
cbPalette <- c("violetred", "yellowgreen", "dodgerblue3", "lightcyan4", "cyan2")
p <- ggplot(all_data.m, aes(x=Sample , y= Gene)) + geom_tile(aes(Sample, fill = Effect))+ scale_fill_manual(values=cbPalette)
p <- p + theme(axis.text.x = element_text(angle=90, vjust=0.5, size=65, face = "bold"), axis.text.y = element_text(size=65, face = "bold"))
p <- p + theme(axis.ticks = element_line(size = 1))
p <- p + theme(axis.line = element_line(size = 5))
p <- p+ theme(legend.text = element_text(size = 80, face = "bold"))
p <- p+ theme(legend.key.size = unit(5, "cm"))
p <- p + theme(axis.title=element_text(size=80,face="bold"))
print(p)
如何根据我的输入文件创建一个数字没有重新排序的轴
所以,我的x轴即它需要依次为TCGA-D1-A17D,TCGA-B5-A0K4,TCGA-AP-A052。
我的Y轴是ACE,CBLC,BRIP1
我应该注意到输入文件只是一个快照。我有超过50个样本,所以一个接一个地输入是不实际的 –
我已经包含了一个排序解决方案。如果订单是真正的自定义(非字母),输入它是我的知识的唯一选择。 –