R热图ggplot2作为数据文件排序
我正在制作这张热图 那篇文章中的代码很好用R热图ggplot2作为数据文件排序,r,ggplot2,R,Ggplot2,我正在制作这张热图 那篇文章中的代码很好用 library(reshape2) library(ggplot2) library(scales) library(plyr) data <- read.csv("fruits.txt", head=TRUE, sep=",") data.m = melt(data) data.m <- ddply(data.m, .(variable), transform, rescale = rescale(value)) data.
library(reshape2)
library(ggplot2)
library(scales)
library(plyr)
data <- read.csv("fruits.txt", head=TRUE, sep=",")
data.m = melt(data)
data.m <- ddply(data.m, .(variable), transform, rescale = rescale(value))
data.m <- ddply(data.m, .(variable), transform, rescale = rescale(value))
p <- ggplot(data.m, aes(variable, people)) + geom_tile(aes(fill = rescale),
colour = "white")
p + scale_fill_gradient(low = "white", high = "steelblue")
但是我需要按原样显示行(从Ej1到Ej4),它以相反的顺序生成行,我无法找到如何按数据文件中的原样显示行 像这样
尝试使用:
data$people <- factor(data$people,levels=rev(data$people))
data$people
是一个因子,ggplot
将按字母顺序从下到上“递增”因子级别。上面的更改颠倒了系数级别的顺序。请添加您尝试解决此问题的代码。
data$people <- factor(data$people,levels=rev(data$people))
data$people <- factor(data$people,levels=rev(data$people))
data.m = melt(data)
data.m <- ddply(data.m, .(variable), transform, rescale = rescale(value))
p <- ggplot(data.m, aes(variable, people)) + geom_tile(aes(fill = rescale),
colour = "white")
p + scale_fill_gradient(low = "white", high = "steelblue")