同じ一般的な方向に進んでいるトピックがいくつかありますが、私の問題を具体的に扱うトピックは見つかりませんでした。したがって、新しいトピックであり、すべての助けに感謝します。
状況
私は水平方向に単一の図に入る必要がある2つのプロットを持っています。
library(ggplot2)
dsamp <- diamonds[sample(nrow(diamonds), 1000), ]
p1 <- qplot(price, carat, data=dsamp, colour=clarity)
p2 <- qplot(price, depth, data=dsamp, colour=clarity)
従属変数はプロットごとに異なりますが、グループ化と独立変数は同じままです。したがって、グループを説明するには、図の凡例が 1 つあれば十分です。
私が試したこととうまくいかなかったこと
R Cookbookで説明されているように、ソリューションを使用しようとしました。そのページで指定されたカスタムmultiplot()
関数は、凡例なしでプロットをうまくレンダリングします。ただし、凡例が 1 つだけ必要な場合、その関数は失敗します。グラフの 1 つには凡例が含まれ、もう 1 つのグラフには含まれないため、両方のグラフの幅は相互に異なります (前述のリンクから multiplot 関数をコピーしてください)。
multiplot(p1 + theme(legend.position = "none"),p2,cols=2)
私が見つけた別の潜在的な解決策は、gridExtra
このコード例を使用したパッケージです。グラフが垂直に配置されていることを除いて、私が必要とすることはほとんどありません。関数の引数をいじってみましたが、プロットを水平に配置する方法がわかりませんでした。誰かがそのパッケージ/問題についてより多くの経験を持っていることを願っています. ありがとう!