簡體   English   中英

帶有兩個數據幀的散布直方圖,R中一個正負

[英]Staked histogram with two data frames, one positive and another negative in R

鑒於我有兩個數據框,如何繪制此圖。 我知道我可以反轉y比例尺,但是無法以這種方式獲得正確的繪圖。

#Create dataframe 1
patientA <- c("treatment1", "treatment2", "treatment3", "treatment4", "treatment5", "treatment6", "treatment7")
x1.value   <- as.numeric(c(1, 34, 48, 24, 10, 9, 18))
df.1 <- data.frame(patientA, x1.value)

#Create dataframe 2
patientB <- c("treatment1", "treatment2", "treatment3", "treatment4", "treatment5", "treatment6", "treatment7")
x2.value   <- as.numeric(c(1, 34, 48, 24, 10, 9, 18))
df.2 <- data.frame(patientA, x2.value)

我當前的腳本,使用以下方法

bp_1 <- ggplot(new.df.1, aes(x=Treatment ,y=Number,fill=substring(Factors,1)))+ 
  geom_histogram(stat="identity",position="dodge") + scale_y_continuous(labels = scales::comma) 
bp_2 <- ggplot(new.df.2, aes(x=Treatment ,y=Number,fill=substring(Factors,1)))+  
  geom_histogram(stat="identity",position="dodge") + scale_y_continuous(labels = scales::comma)

但是我可以在這里做一個單獨的圖。 所需的圖像如下所示。 任何幫助深表感謝。

在此處輸入圖片說明

你可以做這樣的事情...

df <- merge(df.1,df.2,by.x = "patientA",by.y = "patientB")
bp_1 <- ggplot(df) + 
        geom_bar(aes(x=patientA,y=x1.value),fill="blue",stat="identity",position="dodge") + 
        geom_bar(aes(x=patientA,y=-x2.value),fill="red",stat="identity",position="dodge")

暫無
暫無

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

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