簡體   English   中英

如何在ggplot r中繪制每個x-lab條形圖同時包含正和負y值的條形圖?

[英]How to plot a bar chart with each x-lab bar contain both positive and negative y values in ggplot r?

我有一個像這樣的樣本數據集:

df_test <- data.frame(
  proj_manager = c('Emma','Emma','Emma','Emma','Emma','Alice','Alice'),
  proj_ID = c(1, 1, 2, 2, 2, 3, 4), 
  stage = c('B','B','B','A','C','A','C'),
  value = c(15,15,20,20,20,70,5)
)

我按經理計算項目的總價值; 以及每個階段/經理的項目數量,並使用“輸入”進行可視化:

input <- select(df_test, proj_manager, proj_ID, stage, value) %>%
  filter(proj_manager=='Emma') %>%
  do({
    proj_value_by_manager = sum(distinct(., proj_ID, value)$value);
    mutate(., proj_value_by_manager =  proj_value_by_manager)
  }) %>%
  group_by(stage) %>%
 mutate(count_proj = length(unique(proj_ID))) 

print(input)


proj_manager proj_ID  stage value proj_value_by_manager count_proj
        <fctr>   <dbl> <fctr> <dbl>                 <dbl>      <int>
1         Emma       1      B    15                    35          2
2         Emma       1      B    15                    35          2
3         Emma       2      B    20                    35          2
4         Emma       2      A    20                    35          1
5         Emma       2      C    20                    35          1

我期望繪制一個條形圖,顯示所選經理的項目摘要,其中:

  1. X軸使用載物台柱
  2. y軸正方向的項目數計數
  3. y軸上的項目值總和(但顯示為正值)
  4. 特定階段的鋼筋末端連接

圖片未使用示例數據,我希望條形圖不是boxplot ): 在此處輸入圖片說明

如何使用ggplot條形圖實現此目標? 任何幫助將不勝感激!

您將不得不對此進行操作,但這是一個開始( /30只是為了使比例具有可比性,將其更改為所需的值)。

df <- data.frame(input)

commapos <- function(x, ...) {
  format(abs(x), big.mark = ",", trim = TRUE,
     scientific = FALSE, ...) }


ggplot (input, aes(stage), stat = "identity") + 
geom_bar()+geom_bar(aes(y=-proj_value_by_manager/30.0), 
stat = "identity", fill = "Blue") + scale_y_continuous(labels = commapos)

這給了你這個准系統圖。 繼續努力,我相信您可以輕松地使其更漂亮...

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM