[解決済み] プロットされたデータと軸の間のスペースを取り除く
2022-05-31 02:04:45
質問
以下のようなデータフレームがあります。
uniq <- structure(list(year = c(1986L, 1987L, 1991L, 1992L, 1993L, 1994L, 1995L, 1996L, 1997L, 1998L, 1999L, 2000L, 2001L, 2002L, 2003L, 2004L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2011L, 2012L, 2013L, 2014L, 1986L, 1987L, 1991L, 1992L, 1993L, 1994L, 1995L, 1996L, 1997L, 1998L, 1999L, 2000L, 2001L, 2002L, 2003L, 2004L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2011L, 2012L, 2013L, 2014L, 1986L, 1987L, 1991L, 1992L, 1993L, 1994L, 1995L, 1996L, 1997L, 1998L, 1999L, 2000L, 2001L, 2002L, 2003L, 2004L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2011L, 2012L, 2013L, 2014L), uniq.loc = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L), .Label = c("u.1", "u.2", "u.3"), class = "factor"), uniq.n = c(1, 1, 1, 2, 5, 4, 2, 16, 16, 10, 15, 14, 8, 12, 20, 11, 17, 30, 17, 21, 22, 19, 34, 44, 56, 11, 0, 0, 3, 3, 7, 17, 12, 21, 18, 10, 12, 9, 7, 11, 25, 14, 11, 17, 12, 24, 59, 17, 36, 50, 59, 12, 0, 0, 0, 1, 4, 6, 3, 3, 9, 3, 4, 2, 5, 2, 12, 6, 8, 8, 3, 2, 9, 5, 20, 7, 10, 8), uniq.p = c(100, 100, 25, 33.3, 31.2, 14.8, 11.8, 40, 37.2, 43.5, 48.4, 56, 40, 48, 35.1, 35.5, 47.2, 54.5, 53.1, 44.7, 24.4, 46.3, 37.8, 43.6, 44.8, 35.5, 0, 0, 75, 50, 43.8, 63, 70.6, 52.5, 41.9, 43.5, 38.7, 36, 35, 44, 43.9, 45.2, 30.6, 30.9, 37.5, 51.1, 65.6, 41.5, 40, 49.5, 47.2, 38.7, 0, 0, 0, 16.7, 25, 22.2, 17.6, 7.5, 20.9, 13, 12.9, 8, 25, 8, 21.1, 19.4, 22.2, 14.5, 9.4, 4.3, 10, 12.2, 22.2, 6.9, 8, 25.8)), .Names = c("year", "uniq.loc", "uniq.n", "uniq.p"), class = "data.frame", row.names = c(NA, -78L))
でエリアプロットを作ると。
ggplot(data = uniq) +
geom_area(aes(x = year, y = uniq.p, fill = uniq.loc), stat = "identity", position = "stack") +
scale_x_continuous(limits=c(1986,2014)) +
scale_y_continuous(limits=c(0,101)) +
theme_bw()
こんな結果が出ます。
しかし、軸と実際のプロットの間のスペースを取り除きたいのです。私が
theme(panel.grid = element_blank(), panel.margin = unit(-0.8, "lines"))
というエラーメッセージが表示されます。
Error in theme(panel.grid = element_blank(), panel.margin = unit(-0.8, : could not find function "unit"
この問題を解決する方法について、何か提案はありますか?
どのように解決するのですか?
更新しました。 参照 の回答をご覧ください。 の最新版でさらに可能性があります。 ggplot2 .
から
?scale_x_continuous
について
expand
-引数についてです。
データの周りにパディングを追加するために使用される範囲拡大定数のベクター。 軸からある程度離れた場所に配置されるようにするために 軸からある程度離れた場所に配置されるように、データの周りにパディングを追加するために使用されます。デフォルトでは、連続変数の場合は各辺に5%ずつ、連続変数の場合は各辺に0.6単位ずつ拡大されます。 連続変数では各辺5%,離散変数では各辺0.6単位で拡大されます. です。
このように、この問題は
expand = c(0,0)
に
scale_x_continuous
であり
scale_y_continuous
. また、これにより
panel.margin
パラメータを追加する必要もなくなります。
コードです。
ggplot(data = uniq) +
geom_area(aes(x = year, y = uniq.p, fill = uniq.loc), stat = "identity", position = "stack") +
scale_x_continuous(limits = c(1986,2014), expand = c(0, 0)) +
scale_y_continuous(limits = c(0,101), expand = c(0, 0)) +
theme_bw() +
theme(panel.grid = element_blank(),
panel.border = element_blank())
その結果
関連
-
8.2 カマグラ(No.31〜No.40)
-
[解決済み] Rで文字列から文字を削除する
-
[解決済み] グループ化関数(tapply、by、aggregate)と*applyファミリ
-
[解決済み] Rの代入演算子"="と"<-"の違いは何ですか?
-
[解決済み] require()とlibrary()の違いは何ですか?
-
[解決済み] リストやデータフレームの要素にアクセスするためのブラケット[ ]とダブルブラケット[[ ]]の違いについて
-
[解決済み] 先頭と末尾の空白を削除するにはどうしたらよいですか?
-
[解決済み】2つのy軸を左右に持ち、異なるスケールを持つggplot
-
[解決済み】ggplot2で軸の文字の大きさや向きを変更したい
-
[解決済み】ggplot2で軸のタイトルやラベルの大きさを変更する。
最新
-
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言語です。「接続を開くことができません」解決策
-
R言語のエラーメッセージと関連する解決策
-
SocketTimeoutExceptionです。読み込みがタイムアウトしました
-
R言語 - マトリックス
-
[解決済み] HTML、PDF、DOCXで見栄えのするシンプルな手動のRMarkdownテーブル
-
[解決済み] データフレームの行を複数の列でソート(並び替え)する。
-
[解決済み] 非常に大きなテーブルをデータフレームとして高速に読み込む
-
[解決済み] ggplotで凡例のタイトルを変更する方法
-
[解決済み] Rで文字列から最後のn文字を抽出する
-
[解決済み] テーブルをデータフレームに変換する方法