gpt4 book ai didi

r - 从 R 中的点绘制热图

转载 作者:行者123 更新时间:2023-12-04 15:24:56 25 4
gpt4 key购买 nike

我想根据一组点在 R 中绘制热图。

我有一个像这样的数据框

X  Y  col
1 2 1
1 1 4
2 4 9
.......

我想从中得到一个热图,其中 X 和 Y 是点的坐标,col 可以从 0 到 40。我尝试以点为单位绘制或使用 melt(),但没有成功。

我可以使用 geom_point() 绘制一些点,但我希望从一种颜色平滑过渡到另一种颜色,有些人可能这不是正确的做法。

最佳答案

set.seed(1)
library(ggplot2)
df <- as.data.frame(expand.grid(1:50, 1:50))
df$col <- sample(0:40, size = nrow(df), replace = TRUE)
ggplot(df, aes(x = Var1, y = Var2, colour = col, fill = col )) +
geom_tile()

产生:

enter image description here

编辑:

还有这个

set.seed(1)
library(ggplot2)
df <- as.data.frame(expand.grid(1:50, 1:50))
df$col <- sample(0:40, size = nrow(df), replace = TRUE)
df <- df[sample(1:nrow(df), nrow(df) * .2, replace = FALSE), ] # make holes
df <- df[rep(1:nrow(df), df$col), -3]
ggplot(df, aes(x = Var1, y = Var2)) +
geom_point() +
stat_density2d(aes(fill=..density..), geom = "tile", contour = FALSE) +
scale_fill_gradient2(low = "white", high = "red")

产生

enter image description here

关于r - 从 R 中的点绘制热图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25083111/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com