[解決済み] ggplot2 の "data of class uneval" エラーに対処する方法は?
2022-01-28 11:34:02
質問
既存の行に新しい行をオーバーレイしようとしているとき
ggplot
以下のようなエラーが発生します。
Error: ggplot2 doesn't know how to deal with data of class uneval
私のコードの最初の部分は問題なく動作します。以下は、米国中西部の電力市場における1時間ごとの風力発電データの画像です。
今度は、過去2日分の観測値を赤でオーバーレイしたい。 簡単なはずなのですが、なぜかエラーになってしまいます。
何かサポートがあれば、とてもありがたいです。
以下は再現性のある例です。
# Read in Wind data
fname <- "https://www.midwestiso.org/Library/Repository/Market%20Reports/20130510_hwd_HIST.csv"
df <- read.csv(fname, header=TRUE, sep="," , skip=7)
df <- df[1:(length(df$MKTHOUR)-5),]
# format variables
df$MWh <- as.numeric(df$MWh)
df$Datetime <- strptime(df$MKTHOUR, "%m/%d/%y %I:%M %p")
# Create some variables
df$Date <- as.Date(df$Datetime)
df$HrEnd <- df$Datetime$hour+1
# Subset recent and last data
last.obs <- range(df$Date)[2]
df.recent <- subset(df, Date %in% seq(last.obs-30, last.obs-2, by=1))
df.last <- subset(df, Date %in% seq(last.obs-2, last.obs, by=1))
# plot recent in Grey
p <- ggplot(df.recent, aes(HrEnd, MWh, group=factor(Date))) +
geom_line(color="grey") +
scale_y_continuous(labels = comma) +
scale_x_continuous(breaks = seq(1,24,1)) +
labs(y="MWh") +
labs(x="Hour Ending") +
labs(title="Hourly Wind Generation")
p
# plot last two days in Red
p <- p + geom_line(df.last, aes(HrEnd, MWh, group=factor(Date)), color="red")
p
解決方法は?
新しいデータセットを geom に追加する場合は
data=
引数を使用します。または、引数を適切な順序で配置する
mapping=..., data=...
. の引数を見てみましょう。
?geom_line
.
このように
p + geom_line(data=df.last, aes(HrEnd, MWh, group=factor(Date)), color="red")
または
p + geom_line(aes(HrEnd, MWh, group=factor(Date)), df.last, color="red")
関連
-
[解決済み】ggplot2使用時の永続的な無効なグラフィックス状態エラー
-
[解決済み】 'height' はベクトルか行列でなければならない barplot のエラー
-
[解決済み】行列式で「数値/複雑な行列/ベクトルの引数を必要とする」というエラーが発生する?
-
[解決済み] データフレームを結合(マージ)する方法(内側、外側、左側、右側)
-
[解決済み] R dataframeでNAの値をゼロに置き換えるには?
-
[解決済み] パッケージ 'xxx' は利用できません (for R version x.y.z) 」という警告にどのように対処したらよいですか?
-
[解決済み] ggplot2 Rプロットで軸の制限を設定するには?
-
[解決済み】ggplot2によるサイド・バイ・サイド・プロット
-
[解決済み】安定したマッピングを持つggplot2のカテゴリ変数に色を割り当てるには?
-
[解決済み] Rで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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】"置換する項目数が置換長の倍数でない "と表示されるのはなぜですか?
-
[解決済み】'builtin'型のオブジェクトはsubsetableではない【重複
-
[解決済み】model.frame.defaultでのエラー:変数の長さが異なる
-
[解決済み】添え字付き代入でNAを使用することはできません
-
[解決済み] テスト
-
[解決済み】「次のオブジェクトは 'package:xxx' からマスクされています」とはどういう意味ですか?
-
[解決済み】reshape2 meltの警告メッセージ
-
[解決済み】GLM解析での警告
-
[解決済み】bstTreeの予測値の混乱行列、エラー:'The data must contain some levels that overlap reference'.
-
[解決済み】.External.graphics Rでエラーが発生しました。