2017-10-10 10 views
0

x軸が異なる2つのプロットを重ね合わせる方法はありますか?同じY軸でx軸が異なる2つのプロットを重ねる方法R

私は、さまざまな薬を服用していた異なる日の患者の収縮期血圧を持つデータセットを持っています。 SBPの散布図を作成し、SBPのボックスプロットをそれぞれの投薬に重ねていきたいと思います。私は2つのプロットを別々に作成しましたが、1つの図でそれらをどのように組み合わせるかを理解することはできません。

library(ggplot2) 
library(lubridate) 

df <- data.frame(date = c(ymd("2014-09-01") + c(1:5), ymd("2014-09-11") + c(1:5), ymd("2014-09-21") + c(1:5)), sbp1 = round(runif(n=15, min=130, max=200)), group = c(rep("A",5), rep("B",5), rep("C", 5))) 
p1 <- ggplot(df, aes(x=date, y=sbp1)) + geom_point(aes(color = group)) 
p2 <- ggplot(df, aes(x=group, y=sbp1)) + geom_boxplot(aes(x=group, y = sbp1)) 
p1 
p2 

p1 p2

答えて

0

あなたはxシングルスケールに座標にマッピングする方法を決定する必要がある - グループ全体に対して1つの日付を選ぶように、たとえば:

df %>% 
    group_by(group) %>% 
    mutate(groupdate = first(date) + 3) %>% 
    ggplot(aes(y = sbp1)) + 
    geom_boxplot(aes(x = groupdate, group = group)) + 
    geom_point(aes(x = date, colour = group)) 

を次にあなたがスーパーインポーズすることができますggplotジオメトリが互いに重なり合って+になります。ビットハック感じているが、これを生成します。

points and boxplots on the same axis

+0

これは私が探しているまさにです!ありがとう! – FettahP

関連する問題