首页 > 解决方案 > 将 geom_raster() 中的对角线从左下到右上更改为从左上到右下

问题描述

我使用 inside 创建了一个热geom_raster()ggplot。目前,对角线从左下角到右上角。我去翻转对角线,使其从左上角到右下角。

我试图颠倒顺序xy,但这只是颠倒了它们出现在轴上的顺序,并没有改变对角线。

ggplot(data, aes(x=being_rated, y=providing_rating, fill = mean_value)) + 
  geom_raster()

我也尝试过这里提到的建议,但是当对角线被翻转时,X 和 Y 值不再像他们应该的那样匹配。例如,Team 1 & Team 1 应为空白,Team 2 & Team 2 应为空白......这产生了 Team 1 & Team 15 空白,Team 2 & Team 14 空白等。

这是我的图表现在的样子: geom_raster

这就是我想要的样子: geom_raster_desired

这是我正在使用的数据:

data <- structure(list(providing_rating = structure(c(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, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 
3L, 3L, 3L, 3L, 3L, 3L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 
4L, 4L, 4L, 4L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 
5L, 5L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 
7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 8L, 8L, 
8L, 8L, 8L, 8L, 8L, 8L, 8L, 8L, 8L, 8L, 8L, 8L, 9L, 9L, 9L, 9L, 
9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 10L, 10L, 10L, 10L, 10L, 
10L, 10L, 10L, 10L, 10L, 10L, 10L, 10L, 10L, 11L, 11L, 11L, 11L, 
11L, 11L, 11L, 11L, 11L, 11L, 11L, 11L, 11L, 11L, 12L, 12L, 12L, 
12L, 12L, 12L, 12L, 12L, 12L, 12L, 12L, 12L, 12L, 12L, 13L, 13L, 
13L, 13L, 13L, 13L, 13L, 13L, 13L, 13L, 13L, 13L, 13L, 13L, 14L, 
14L, 14L, 14L, 14L, 14L, 14L, 14L, 14L, 14L, 14L, 14L, 14L, 14L, 
15L, 15L, 15L, 15L, 15L, 15L, 15L, 15L, 15L, 15L, 15L, 15L, 15L, 
15L), .Label = c("Team1", "Team2", "Team3", "Team4", "Team5", "Team6", 
"Team7", "Team8", "Team9", "Team10", "Team11", "Team12", "Team13", 
"Team14", "Team15"), class = "factor"), being_rated = structure(c(2L, 
3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L, 15L, 1L, 
3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L, 15L, 1L, 
2L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L, 15L, 1L, 
2L, 3L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L, 15L, 1L, 
2L, 3L, 4L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L, 15L, 1L, 
2L, 3L, 4L, 5L, 7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L, 15L, 1L, 
2L, 3L, 4L, 5L, 6L, 8L, 9L, 10L, 11L, 12L, 13L, 14L, 15L, 1L, 
2L, 3L, 4L, 5L, 6L, 7L, 9L, 10L, 11L, 12L, 13L, 14L, 15L, 1L, 
2L, 3L, 4L, 5L, 6L, 7L, 8L, 10L, 11L, 12L, 13L, 14L, 15L, 1L, 
2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 11L, 12L, 13L, 14L, 15L, 1L, 
2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 12L, 13L, 14L, 15L, 1L, 
2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 13L, 14L, 15L, 1L, 
2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 14L, 15L, 1L, 
2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L, 15L, 1L, 
2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L), .Label = c("Team1", 
"Team2", "Team3", "Team4", "Team5", "Team6", "Team7", "Team8", "Team9", "Team10", 
"Team11", "Team12", "Team13", "Team14", "Team15"), class = "factor"), 
    mean_value = c(2.5, 2.5, 2.25, 2.75, 1.75, 2, 2.75, 2.25, 
    2.25, 2.5, 2.25, 2.5, 2.75, 2.75, 2, 2.25, 1.75, 2.5, 2.25, 
    2.25, 2.25, 1.5, 1.66666666666667, 1.75, 2, 2, 2, 2.75, 2.33333333333333, 
    3, 2.33333333333333, 2.33333333333333, 2.33333333333333, 
    2, 2.33333333333333, 2, 2.66666666666667, 2, 2.66666666666667, 
    3, 2.66666666666667, 3, 2.5, 2.5, 2.5, 2.5, 2, 2.5, 2, 2.5, 
    2.5, 2, 3, 3, 3, 3, 1.5, 2.5, 2.5, 2, 3, 2.66666666666667, 
    2.33333333333333, 1.83333333333333, 1.83333333333333, 1.66666666666667, 
    1.83333333333333, 2.16666666666667, 2.66666666666667, 3, 
    1.6, 1.8, 1.8, 2, 2.8, 2.8, 2.6, 2, 2, 1.6, 2.8, 1.6, 2.6, 
    2.8, 1.66666666666667, 2.66666666666667, 1.66666666666667, 
    1.33333333333333, 2.33333333333333, 2.66666666666667, 1.66666666666667, 
    1.66666666666667, 1.66666666666667, 1.66666666666667, 3, 
    2, 2.33333333333333, 3, 2.6, 2.4, 2.4, 2.6, 2.6, 2.8, 2.4, 
    2.4, 2.6, 2.6, 2.6, 2.4, 2.6, 2.8, 2.33333333333333, 2.33333333333333, 
    2.33333333333333, 2, 2.66666666666667, 2.33333333333333, 
    1.66666666666667, 2, 2, 2.33333333333333, 2, 2, 2.33333333333333, 
    2.66666666666667, 2.66666666666667, 3, 3, 2.66666666666667, 
    2.66666666666667, 2.66666666666667, 2.66666666666667, 2.33333333333333, 
    2, 2.33333333333333, 2.66666666666667, 2.66666666666667, 
    2.66666666666667, 3, 2.5, 2.25, 2, 2, 2, 2.25, 2.25, 2, 2.5, 
    1.66666666666667, 2.33333333333333, 2.5, 2.5, 3, 3, 3, 3, 
    3, 2.5, 3, 3, 3, 2.5, 3, 2.5, 3, 2.5, 3, 1.5, 2, 2, 2.5, 
    1.5, 2, 1.5, 2, 1.5, 2, 1.5, 2.5, 3, 2.5, 2.5, 2.75, 2.25, 
    3, 2, 2.75, 2.5, 2.25, 2.25, 2.25, 2, 2.25, 2.5, 3, 2, 2.66666666666667, 
    3, 3, 2.66666666666667, 3, 2.66666666666667, 3, 2.33333333333333, 
    2.66666666666667, 2.33333333333333, 2.66666666666667, 3, 
    2.66666666666667)), class = c("tbl_df", "tbl", "data.frame"
), row.names = c(NA, -210L))

标签: rggplot2geom-raster

解决方案


推荐阅读