r语言 - 不确定为什么这个子集不能在ggplot中工作



我对数据集进行了子集设置,以便只包括三个站点,因为我只想绘制三个站点,而下面的代码似乎无法使用ggplot。有人知道为什么吗?

rm(list=ls())
require(ggplot2)
require(reshape2)
require(magrittr)
require(dplyr)
require(tidyr)
setwd("~/Documents/Results")
mydata <- read.csv("Metals sheet R.csv")
L <- subset(mydata, Site =="B1"| Site == "B2"| Site == "B3", select =       c(Site,Date,Al))
L$Date <- as.Date(L$Date, "%d/%m/%Y")
ggplot(data=L, aes(x=Date, y=Al, xaxt="n", colour=Site)) +
geom_point() + 
labs(title = "Total Al in the Barlwyd and Bowydd
   19/03/2015.", x = "Site",
   y = "Total concentration (mg/L)") +
  scale_x_date(date_breaks = "1 month", labels = date_format("%m"))

它似乎在情节线之后摇摇欲坠。提前感谢。我已经仔细检查过了,但没有发现任何问题。我可能需要一种方法来绘制21个站点中的3个。

我的子集L数据集的头部看起来像这样(x58代表)

Date          Site        Al
12/08/2015    B1         22.3
12/08/2015    B2         23.4
12/08/2015    B3         203

提前感谢。

我认为xaxt = "n"是错误的。ggplot aes函数仅用于将数据中的变量与绘图元素相匹配。要删除ggplot中的x轴文本,请使用theme函数,例如ggplot2 plot不带轴,图例等。

另外,%in%操作符提供了一种从列中选择值子集的更快方法:

subset(mydata, Site %in% c("B1", "B2", B3"))

最新更新