2017-05-12 13 views
0

2つのデータフレームがある場合、どのようにプロットすればよいですか?私はyスケールを逆転できるが、このように正しいプロットを得ることができないと理解する。2つのデータフレーム(1つは正、もう1つはR)にヒストグラムを格納

#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) 

に使用しかし、私は、ここに一人の個人のプロットを行うことができます。希望する画像を下に示します。どんな助けでも大歓迎です。

enter image description here

+0

何ですか? – user3640617

+0

new.df.1とnew.df.2は、この例で示したdf.1とdf.2と同等です。申し訳ありませんが、私はちょうど明らかな問題を述べるためにダミーデータフレームを作成しました。私の実際のデータセットははるかに大きいです。 – user44552

+0

ヒストグラムに負の値がないことに同意します。生物学的用語ではdf.1がアップレギュレートされ、df.2がダウンレギュレーションされているため、負のyスケールを示すだけです。それゆえ、私のようなダミーのための機能的表現であると思われる数字を示したいと思う。私が望むのはgeom_barだと思います。 – user44552

答えて

0

あなたはこのような何かを行うことができ... `new.df.1`と` new.df.2`は

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") 
+0

ありがとうございます。 – user44552

関連する問題