我对数据集进行了子集设置,以便只包括三个站点,因为我只想绘制三个站点,而下面的代码似乎无法使用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"))