我試圖獲得不同的條形圖,但不知何故遵循不同的方法,我無法將閾值更改為單獨的條形圖。
# RQ_avg is numeric continous variable, and gen is factor category (55 genes)
genes_plot2 <- genes_plot %>% dplyr::group_by(gen,RQ_avg) %>% nest()
genes_plot2 <- genes_plot2 %>% dplyr::mutate(Color = ifelse(RQ_avg >1, "green", "red"))
print(head(genes_plot2))
# A tibble: 6 × 4
# Groups: gen, RQ_avg [6]
gen RQ_avg data Color
<chr> <dbl> <list> <chr>
1 ppara 1.35 <tibble [151 × 25]> green
2 ppard 1.40 <tibble [151 × 25]> green
3 pparg 1.29 <tibble [151 × 25]> green
4 nr1h3 1.30 <tibble [151 × 25]> green
5 nr1h2 1.39 <tibble [151 × 25]> green
6 rxra 1.40 <tibble [151 × 25]> green
ggplot(data = genes_plot2,
aes(x = reorder(gen, RQ_avg), y = RQ_avg,
fill = Color))
geom_bar(stat = "identity")
scale_fill_manual(values = c("green" = "green", "red" = "red"), guide = "none")
labs(x = "Gene", y = "Fold change value",
title = "Gene expression",
subtitles = "Relative quantification")
theme_minimal()
guides(fill = F)

我真正想要的是這樣的東西,我特別詳細說明的數字作為閾值斷點

太感謝了!
uj5u.com熱心網友回復:
您希望您的條形高度與您指定的值有距離,因此通過減法創建一個新的 y 值(然后測驗方向以選擇填充顏色):
library(tidyverse)
df <- tibble(gen = LETTERS,
RQ_ave = runif(26, 1, 10))
df |>
mutate(val = RQ_ave - 5,
direction = val > 0) |>
ggplot(aes(fct_reorder(gen, val), val, fill = direction))
geom_bar(stat = "identity")
coord_flip()
theme(legend.position = "none")

轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/531117.html
標籤:rggplot2条形图
上一篇:R:ggplot:如何將顏色分配給一個在圖中始終出現的變數,其余的隨機
下一篇::無法訪問字串型別的偏移量
