[解決済み] ggplot2のファセットに一般的なラベルを追加するには?
2023-03-22 12:52:34
質問
ファセットで数値を表示することがよくあります。 これらのファセット値を解釈するのに十分な情報を、軸のタイトルと同様に、補足的なタイトルで提供したいと思います。 ラベラー オプションは不必要なテキストを繰り返し、長い変数のタイトルには使用できません。
何か提案はありますか。
デフォルトのままです。
test<-data.frame(x=1:20, y=21:40, facet.a=rep(c(1,2),10), facet.b=rep(c(1,2), each=20))
qplot(data=test, x=x, y=y, facets=facet.b~facet.a)
<イグ
私が好きなもの
ggplotでできる精一杯のこと。
qplot(data=test, x=x, y=y)+facet_grid(facet.b~facet.a, labeller=label_both)
<イグ
に似ていると@Hendyさんが指摘されています。 ggplot2 のプロットに第二の y 軸を追加する - 完全なものにする
どのように解決するのですか?
最新の
ggplot2
は
gtable
を内部で使っているため、図の修正が非常に簡単です。
library(ggplot2)
test <- data.frame(x=1:20, y=21:40,
facet.a=rep(c(1,2),10),
facet.b=rep(c(1,2), each=20))
p <- qplot(data=test, x=x, y=y, facets=facet.b~facet.a)
# get gtable object
z <- ggplotGrob(p)
library(grid)
library(gtable)
# add label for right strip
z <- gtable_add_cols(z, unit(z$widths[[7]], 'cm'), 7)
z <- gtable_add_grob(z,
list(rectGrob(gp = gpar(col = NA, fill = gray(0.5))),
textGrob("Variable 1", rot = -90, gp = gpar(col = gray(1)))),
4, 8, 6, name = paste(runif(2)))
# add label for top strip
z <- gtable_add_rows(z, unit(z$heights[[3]], 'cm'), 2)
z <- gtable_add_grob(z,
list(rectGrob(gp = gpar(col = NA, fill = gray(0.5))),
textGrob("Variable 2", gp = gpar(col = gray(1)))),
3, 4, 3, 6, name = paste(runif(2)))
# add margins
z <- gtable_add_cols(z, unit(1/8, "line"), 7)
z <- gtable_add_rows(z, unit(1/8, "line"), 3)
# draw it
grid.newpage()
grid.draw(z)
<イグ
もちろん、ストリップラベルを自動的に追加するような関数を書くこともできます。将来のバージョンでは
ggplot2
の将来のバージョンにはこの機能があるかもしれませんが、確かではありません。
関連
-
二項演算子への非数値引数を報告するR言語エラー
-
[解決済み] ggplot2 折れ線グラフで「geom_path: 各グループは1つの観測値のみから構成されています。グループの美観を調整する必要がありますか?"
-
R言語エラー:図の余白が大きすぎる 解決方法
-
データボックス内の行/列の削除/追加を行うR言語
-
Rの警告 "条件の長さが1より大きいので、最初の要素しか使えない "に対する解決策
-
[解決済み] Rでcは何をするのですか?重複] [重複
-
[解決済み] クリック可能なラベルを持つチェックボックスを作成するには?
-
[解決済み] 非常に大きなテーブルをデータフレームとして高速に読み込む
-
[解決済み] ggplot2 Rプロットで軸の制限を設定するには?
-
[解決済み】エラー:Rで関数が見つかりませんでした。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[R] is.data.frame(x) のエラー : (リスト) オブジェクトを 'double' 型に強制できない。
-
DEG解析で'row.names'に重複した名前を付けられない場合の解決法
-
[解決済み] 文字列ベクトルを代入して、列名を持つ空のデータフレームを作成する?重複
-
[解決済み] R および RStudio のコンソールをクリアする関数
-
[解決済み] 空のdata.frameを作成する
-
[解決済み] ベクトル中のxの値を持つ要素の個数を数える
-
[解決済み] データフレーム内のランダムな行をサンプリングする
-
[解決済み] ggplot2 を使って 2 つの変数を同じグラフに線でプロットする
-
[解決済み] Rで文字列から最後のn文字を抽出する
-
[解決済み】RでCRANミラーを選択する方法