R ggplot2画热图
时间: 2023-09-05 15:13:40 浏览: 166
CompoHeatMap:使用 ggplot2 创建与其他条形图组成的漂亮热图的 R 代码
要在R中使用ggplot2绘制热图,可以使用ggplot2和reshape2包。
首先,需要准备数据,数据应该包含x,y和z值。x和y是矩阵的行和列,z是矩阵中的值。
例如,以下是一个简单的3x3矩阵:
```
x y z
1 1 5
1 2 10
1 3 15
2 1 20
2 2 25
2 3 30
3 1 35
3 2 40
3 3 45
```
数据可以使用melt函数从宽格式转换为长格式:
```r
library(reshape2)
data_long <- melt(data, id.vars=c("x","y"))
```
接下来,可以使用ggplot2的geom_tile函数绘制热图:
```r
library(ggplot2)
ggplot(data_long, aes(x=x, y=y, fill=value)) +
geom_tile()
```
这将创建一个基本的热图。您可以使用scale_fill_gradient函数调整颜色范围,并使用theme函数添加标签和标题。
```r
ggplot(data_long, aes(x=x, y=y, fill=value)) +
geom_tile() +
scale_fill_gradient(low="white", high="red") +
labs(x="X", y="Y", title="Heatmap") +
theme(plot.title = element_text(hjust = 0.5))
```
这将创建一个更好的热图,具有更好的颜色和标签。
阅读全文