我試圖制作一個包含六個箱線圖的圖,
我不確定如何開始,但使用 ggplot
我希望連續獲得 6 個箱線圖:
A5(1,0 和 NA)下三個變數的 3 個箱線圖A9(1、0 和 NA)下變數的 3 個箱線圖。- 然后用 中的相應值填充箱線圖
maf。我一直在嘗試繪制它們,但我只繪制了 Maf 列或灰色板。任何幫助都會很棒,謝謝。
A5 A9 maf
1 1 NA 9.33843e-01
2 1 1 2.07735e-01
3 1 1 9.28438e-01
4 1 1 7.17963e-01
5 0 NA 1.02935e-01
6 1 1 9.28281e-01
7 1 1 9.28100e-01
8 1 1 2.85170e-01
9 1 1 2.67085e-01
10 1 1 9.28339e-01
11 1 1 5.68334e-02
12 1 1 4.87848e-01
13 1 1 2.22414e-01
14 1 1 3.37689e-01
15 1 1 1.09452e-01
16 1 1 4.71361e-02
17 NA NA 6.87674e-01
18 0 0 5.03323e-01
19 1 1 8.93953e-01
20 1 1 9.13662e-01
編輯 - - - - - - - - - - - - - - - - - - - - - - - - - --------- 在原始資料上使用 e-9 指數運行代碼時:
df %>%
pivot_longer(
-maf
) %>%
ggplot(aes(name, maf, fill=factor(value)))
geom_boxplot()
我得到這個影像:

編輯 2------------------------------------------------ -----------
structure(list(A5 = c(1L, 1L, 1L, 1L, 0L, 1L), A9 = c(NA, 1L,
1L, 1L, NA, 1L), maf = c("9.33843e-01", "2.07735e-01", "9.28438e-01",
"7.17963e-01", "1.02935e-01", "9.28281e-01")), row.names = c(NA,
6L), class = "data.frame")
uj5u.com熱心網友回復:
更新新資料:
df %>%
pivot_longer(
-maf
) %>%
ggplot(aes(factor(name), as.numeric(maf), fill=factor(value)))
geom_boxplot()
scale_y_continuous(labels = function(x) format(x, scientific = FALSE))

第一個回答:
以長格式輸入您的資料,然后使用 geom_boxplot()
library(tidyverse)
df %>%
pivot_longer(
-maf
) %>%
ggplot(aes(name, maf, fill=factor(value)))
geom_boxplot()

資料:
df <- structure(list(A5 = c(1L, 1L, 1L, 1L, 0L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, NA, 0L, 1L, 1L), A9 = c(NA, 1L, 1L, 1L,
NA, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, NA, 0L, 1L, 1L
), maf = c(0.933843, 0.207735, 0.928438, 0.717963, 0.102935,
0.928281, 0.9281, 0.28517, 0.267085, 0.928339, 0.0568334, 0.487848,
0.222414, 0.337689, 0.109452, 0.0471361, 0.687674, 0.503323,
0.893953, 0.913662)), class = "data.frame", row.names = c("1",
"2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13",
"14", "15", "16", "17", "18", "19", "20"))
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/388259.html
