मैं कुछ स्थानिक डेटा की कल्पना करने के लिए ggplot से geom_tile फ़ंक्शन का उपयोग कर रहा हूं। मेरे पास एक सतत चर region_relative_rainfall और असतत चर region है। मैं एक स्पष्ट साजिश बनाना चाहता हूं जिसमें अलग-अलग चर के प्रत्येक स्तर के लिए विपरीत रंग हों। और असतत चर के प्रत्येक स्तर के भीतर एक ही रंग निरंतर चर के लिए अनुक्रमिक होता है। मैं केवल यह जानता हूं कि नीचे दिए गए कोड के साथ दिखाए गए रंग और रंग को कैसे बदला जाए, लेकिन यह उतना स्पष्ट नहीं है जितना मैं चाहूंगा। किसी भी सुझाव की बहुत सराहना की जाएगी।

# geom_tile question
library(ggplot2)
library(dplyr)
set.seed(123)
n_row = 10
n_col = 20
df = expand.grid(1:n_row, 1:n_col)
colnames(df) = c("y","x")
n = n_row * n_col
k = 5
df$region = sample(x = letters[1:k], size = n, replace = T)
df$rainfall = rlnorm(n = n, log(13), 0.4)
## normalise rainfall by region, to sum = 1 for each region
df <- df %>% 
  group_by(region) %>%
  mutate("region_relative_rainfall" =rainfall / sum(rainfall))

## Current plot, not quite what I want
ggplot(df, aes(x = x, y = y, fill = region_relative_rainfall, color = region)) +
  geom_tile() +
  theme(panel.grid = element_blank(),
        axis.text = element_blank()) +
  scale_y_reverse( lim=c(n_row,1))
0
Cyrillm_44 29 नवम्बर 2020, 06:34

1 उत्तर

सबसे बढ़िया उत्तर

क्या आपको ऐसा कुछ चाहिए?

library(ggplot2)

ggplot(df) + aes(x = x, y = region, fill = region) +
  geom_tile(aes(alpha = region_relative_rainfall)) + 
  theme(panel.grid = element_blank(),
        axis.text = element_blank()) 

enter image description here

1
Ronak Shah 29 नवम्बर 2020, 06:46