【问题标题】:Multiple Taylor diagram in one Figure in R?R中一个图中的多个泰勒图?
【发布时间】:2020-11-10 12:40:32
【问题描述】:

我正在尝试在同一 figure 上为每个 data.frame (i.e., Precipitation, Max_Temp, and Min_temp) 绘制 taylor diagram。每个data.frame 都有一个ref observationmodel outputs,由(A1,G2, and G3) 表示。任何帮助将不胜感激。

library(tidyverse)
library(plotrix)

set.seed(123)

precipitation <- data.frame(Ref = runif(730,1,5), A1 = runif(730,0,8), G2 = runif(730,2,6), G3 = runif(730,1,7)) 
Max_Temp <-  data.frame(Ref = runif(730,-5,30), A1 = runif(730,-8,32), G2 = runif(730,-2,28), G3 = runif(730,-10,25))
Min_Temp <-  data.frame(Ref = runif(730,-20,5), A1 = runif(730,-25,10), G2 = runif(730,-25,6), G3 = runif(730,-15,10))

我尝试了代码来绘制降水图,但出现错误。

precipitation %>% 
  pivot_longer(names_to = "Models", values_to = "values", -Ref) %>% 
  taylor.diagram(Ref, values, col = Models)

我想要一个如下图

【问题讨论】:

    标签: r dataframe ggplot2 facet-wrap plotrix


    【解决方案1】:

    我不确定您的示例数据是否会产生您期望的绘图,但您可以尝试为每个模型过滤数据框,并使用 add = TRUE 选项将点覆盖在同一绘图上。另外,我认为explosion pipe 会有所帮助(%$%),我刚刚了解到它实际上在docs 中被称为“展示管道”:

    library(tidyverse)
    library(plotrix)
    library(magrittr)
    
    set.seed(123)
    precipitation <- data.frame(Ref = runif(730,1,5), A1 = runif(730,0,8), G2 = runif(730,2,6), G3 = runif(730,1,7)) 
    Max_Temp <-  data.frame(Ref = runif(730,-5,30), A1 = runif(730,-8,32), G2 = runif(730,-2,28), G3 = runif(730,-10,25))
    Min_Temp <-  data.frame(Ref = runif(730,-20,5), A1 = runif(730,-25,10), G2 = runif(730,-25,6), G3 = runif(730,-15,10))
    
    precipitation %>% 
      pivot_longer(names_to = "Models", values_to = "values", -Ref) %>% 
      filter(Models == "A1") %$%
      taylor.diagram(Ref, values, col = "blue", pch = 1)
    
    precipitation %>% 
      pivot_longer(names_to = "Models", values_to = "values", -Ref) %>% 
      filter(Models == "G2") %$%
      taylor.diagram(Ref, values, col = "red", pch = 2, add = TRUE)
    
    precipitation %>% 
      pivot_longer(names_to = "Models", values_to = "values", -Ref) %>% 
      filter(Models == "G3") %$%
      taylor.diagram(Ref, values, col = "green", pch = 3, add = TRUE)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-09-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多