【发布时间】:2023-01-24 16:59:32
【问题描述】:
问题
我正在尝试创建一个气泡网格热图,例如 here 中的那个。 然而,我在改编这段代码时遇到了几个问题。到目前为止我的代码是:
ggplot(yzlong2, aes(x = Period, y = Statement)) +
geom_point(aes(col = Avg, fill = Avg, size = Count), shape = 21) +
theme_minimal() +
theme(
legend.position = 'top',
text = element_text(color = 'grey40', size = 20)
) +
scale_size_area(max_size = 15, guide='none') +
scale_fill_gradient(high = "blue", low= "red", name="Average",
labels = c("5", "4", "3", "2", "1"),
breaks = c(5, 4, 3, 2, 1))
我在使用这段代码时遇到了几个问题:
- 如何在保留新填充图例的同时删除旧的蓝色渐变填充图例?
- 如何通过选择中间色来更改新填充图例的配色方案?我希望配色方案从红色变为白色再变为蓝色。如果有一种方法可以添加更多颜色可能会更好,因为 Avgs 分布非常紧密
- 如何将填充图例的比例从 1(红色)更改为 5(蓝色)?
数据
structure(list(Statement = c("A1", "A2", "A3", "A4", "A5", "A6", "A7", "A8", "A9", "A10", "A11", "A12", "A13", "A14", "A15", "A16", "A17", "A18", "A19", "A20", "A21", "A22", "A23", "A24", "A25", "A26", "A27", "A28", "A29", "A30", "A31", "A32", "A33", "A34" ), Period = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L), .Label = c("Mar-1930", "Apr-1930" ), class = "factor"), Avg = c(4.6, 4.2, 4.6, 4.2, 4.2, 4.8, 4.2, 3.6, 4, 4.2, 4.6, 4.6, 4.2, 4.2, 4.8, 4.6, 4.6, 4.33333333333333, 4.5, 4.66666666666667, 4.33333333333333, 4.33333333333333, 4.33333333333333, 4.33333333333333, 3.5, 3.83333333333333, 4, 4.5, 4.33333333333333, 4.66666666666667, 4.33333333333333, 4.83333333333333, 4.83333333333333, 4.66666666666667), Count = c(5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6)), row.names = c(NA, -34L), class = "data.frame")环境
sessionInfo() R version 4.1.2 (2021-11-01) Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 10 x64 (build 19045)
【问题讨论】:
标签: r ggplot2 visualization