【问题标题】:R create boxplot based on columns dataR根据列数据创建箱线图
【发布时间】:2021-10-23 19:32:03
【问题描述】:

我有一个包含以下列的表格:

id duration1 duration2 duration3
1 500 250 140
2 300 270 200
3 250 200 300
4 400 210 400

我想在箱线图中绘制 duration1、duration2 和 duration3 的值,列名 (duration1,...2,...3) 作为 x 轴的标签,它们的列值作为 y-谷。

Example image

【问题讨论】:

    标签: r dplyr


    【解决方案1】:
    dat <- data.frame('id' = c(1,   500,    250,    140), 
                      'duration1' = c(2,    300,    270,    200), 
                      'duration2' = c(3,    250,    200,    300), 
                      'duration3' = c(4,    400,    210,    400), 
                      stringsAsFactors = F) 
    
    dat_plot <- dat %>%
             pivot_longer(-id)
     
     p <- ggplot(dat_plot)+   geom_boxplot(aes(x = name, y = value, fill = name)) 
     p
    

    reference

    【讨论】:

      【解决方案2】:

      你想要这样的东西吗?

      library(tidyverse)
       data1 <- tibble(
              id = 1:4,
              duration1 = c(500,300,250,400),
              duration2 = c(250,270,200,210),
              duration3 = c(140,200,300,400)
       )
        data1 <- data1 %>%
           pivot_longer(-id)
      
        boxpl <- ggplot(data1, aes(x=name, y=value, fill = name)) + 
           geom_boxplot() + theme_classic()
          
      

      【讨论】:

      • 是的,这就是情节。但不是 x 轴上的 id,我希望将列名称(duration1、duration2、duration3)放在那里,并将所有三个放在一个图中。
      • @Jonas 我会更正,但您可以在上面看到答案...
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-03
      • 2021-08-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多