簡體   English   中英

如何使用ggplot2制作散點圖?

[英]How to make a scatter plot using ggplot2?

我正在嘗試為我擁有的一些甲烷排放數據制作數據與時間圖。 到目前為止的代碼如下所示:

CH4 <- as.numeric(Aeris_2_Data$CH4)
Aeris_2_Data$Date.Time <- as.POSIXct(Aeris_2_Data$Time_Stamp, tz = "", "%m/%d/%Y %H:%M:%S")

ggplot(Aeris_2_Data, aes(x = Aeris_2_Data$Date.Time, y = as.numeric(CH4)) + geom_point() + labs(x = "Time", y = "CH4 [ppm]") + ggtitle("Methane Over Time")

我的數據如下所示:

head(Aeris_2_Data)和 this: head 的擴展

我正在嘗試隨着時間的推移映射 CH4,正如您可能從我迄今為止管理的小代碼片段中看到的那樣。 但我不斷收到錯誤消息:

Error in seq.int(0, to0 - from, by) : 'to' must be a finite number

一切似乎都與我記得並在網上找到的 ggplot 信息相匹配。 出了什么問題? 我的猜測是與時間數據的格式有關,格式為%m/%d/%Y %H:%M:%S並作為字符存儲在我從中提取的 csv 文件中。 如何正確格式化以更改它? 提前致謝。

您的代碼中有兩個錯誤:

  • 日期格式是"%m/%d/%Y %H:%M"而不是"%m/%d/%Y %H:%M:%S"
  • 一個)aes()之后丟失

另外提到的是你應該更好地使用Date.Time並將CH4作為數字直接轉換為 data.frame 的注釋

代碼應該是:

Aeris_2_Data$CH4 <- as.numeric(Aeris_2_Data$CH4)
Aeris_2_Data$Date.Time <- as.POSIXct(Aeris_2_Data$Time_Stamp, tz = "", "%m/%d/%Y %H:%M")

ggplot(Aeris_2_Data, aes(x = Date.Time, y = as.numeric(CH4))) + geom_point() + labs(x = "Time", y = "CH4 [ppm]") + ggtitle("Methane Over Time")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM