[解決済み] ggplot2 折れ線グラフで「geom_path: 各グループは1つの観測値のみから構成されています。グループの美観を調整する必要がありますか?"
2022-01-28 23:13:34
質問内容
このデータフレーム("df")で。
year pollution
1 1999 346.82000
2 2002 134.30882
3 2005 130.43038
4 2008 88.27546
このような折れ線グラフを作成してみる。
plot5 <- ggplot(df, aes(year, pollution)) +
geom_point() +
geom_line() +
labs(x = "Year", y = "Particulate matter emissions (tons)", title = "Motor vehicle emissions in Baltimore")
というエラーが出ます。
geom_path: 各グループは1つの観測値のみから構成されています。必要ですか? グループの美しさを調整しますか?
折れ線グラフにしたいのに、散布図になってしまいます。そこで
geom_line()
で
geom_line(aes(group = year))
が、うまくいかなかった。
ある回答で、yearをファクター変数に変換するように言われました。私はそれをしましたが、問題は解決されませんでした。これは、以下の出力です。
str(df)
と
dput(df)
:
'data.frame': 4 obs. of 2 variables:
$ year : num 1 2 3 4
$ pollution: num [1:4(1d)] 346.8 134.3 130.4 88.3
..- attr(*, "dimnames")=List of 1
.. ..$ : chr "1999" "2002" "2005" "2008"
structure(list(year = c(1, 2, 3, 4), pollution = structure(c(346.82,
134.308821199349, 130.430379885892, 88.275457392443), .Dim = 4L, .Dimnames = list(
c("1999", "2002", "2005", "2008")))), .Names = c("year",
"pollution"), row.names = c(NA, -4L), class = "data.frame")
解決方法は?
を追加するだけです。
group = 1
を ggplot または geom_line aes() に追加します。
折れ線グラフの場合、どの点をつなげばいいのかがわかるように、データ点をグループ化する必要があります。この場合、単純にすべての点をつなげばよいので、group=1 となります。より多くの変数が使われ、複数の線が描かれる場合、線のグループ化は通常、変数ごとに行われます。
参考 Rのためのクックブック、章。Graphs Bar_and_line_graphs_(ggplot2), Line graphs.
これを試してみてください。
plot5 <- ggplot(df, aes(year, pollution, group = 1)) +
geom_point() +
geom_line() +
labs(x = "Year", y = "Particulate matter emissions (tons)",
title = "Motor vehicle emissions in Baltimore")
関連
-
[解決済み】R:関数に有限な'ylim'値が必要
-
[解決済み】model.frame.defaultでのエラー:変数の長さが異なる
-
[解決済み】RでのMLEエラー:'vmmin'の初期値が有限でない
-
[解決済み】Rエラー。"新しい列は既存の列の後に穴を空ける"
-
[解決済み】R Markdown - html出力でフォントサイズとフォントタイプを変更する
-
[解決済み] lmer エラー: グループ化係数は観測数未満でなければならない
-
[解決済み】RでAIC中に行数が変化するのはなぜですか?そうならないようにするにはどうしたらいいですか?
-
[解決済み] [Solved] read.csv warning 'EOF within quoted string' prevents complete reading of file.
-
[解決済み】エラー - replacement has [x] rows, data has [y].
-
[解決済み】起動時にパーをデフォルト値にリセットする方法
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】「arguments imply differing number of rows: x, y」というエラーは何を意味するのか?
-
[解決済み】値を置き換えようとすると、"データフレームの添え字の割り当てで欠損値は許可されない"
-
[解決済み】GLM解析での警告
-
[解決済み】Rのメモリ管理/サイズn Mbのベクトルを割り当てられない
-
[解決済み] lmer エラー: グループ化係数は観測数未満でなければならない
-
[解決済み】 lm.fit(x, y, offset = offset, singular.ok = singular.ok, ...) のエラー : 'y' の NA/NaN/Inf, あらゆる方法を試したが解決しなかった。
-
[解決済み】rbind(deparse.level, ...)でエラー:引数の列の数がRにマッチしていない
-
[解決済み】R: predict() の数値 'envir' 引数が長さ1でない。)
-
[解決済み】 eval(expr, envir, enclos) でのエラー : オブジェクトが見つかりません。
-
[解決済み】seq_alongはうまくいくが、seqが意図しない結果を生む例とは?