答案 0 :(得分:1)
以下是使用mtcars
数据的示例(缩放以提供可比较的值,因此数字并不重要)。
关键是使用gather
整理数据,geom_tile
按值填充,geom_text
表示标签。其他一切只是对特定数据框的操纵。
你也可以使用其中一个scale_fill_gradient
geoms。
library(tidyverse)
library(viridis)
mtcars %>%
scale() %>%
as.data.frame() %>%
rownames_to_column(var = "make") %>%
gather(var, val, -make) %>%
ggplot(aes(var, make)) +
geom_tile(aes(fill = val)) +
geom_text(aes(label = round(val, 2)),
size = 3) +
coord_fixed() +
scale_fill_viridis() +
guides(fill = FALSE)
或使用:
+ scale_fill_gradient2(midpoint = 1.5)