我想绘制我的时态数据,但出于某种原因,我没有清楚地绘制情节。我用这个函数:
plot(temperature~month*area, data=mydata)
但是这个功能并没有将这些区域分开。
我的例子是:
area month temperature
d1 november 18,723
d1 november 16,963
d1 november 22,753
d1 november 30,495
d1 november 26,818
d1 november 22,944
i1 november 18,485
i1 november 17,368
i1 november 16,844
i1 november 24,171
i1 november 28,072
i1 november 28,766
i1 november 25,744
i1 november 22,920
c1 november 17,272
c1 november 16,225
c1 november 16,058
c1 november 22,920
c1 november 28,642
c1 november 26,256
d1 december 17,558
d1 december 28,468
d1 december 21,318
i1 december 21,246
i1 december 20,103
c1 december 27,776
c1 december 21,652
c1 december 19,793
c1 december 18,628
c1 december 17,796
答案 0 :(得分:1)
您的数据有点奇怪。你只有两个约会。您的三个区域中的每个区域都具有多个临时值。使用线图是没有意义的。以下代码提供按区域分组的散点图。它使用库ggplot2按组进行绘图。
dat <- read.table(
header=TRUE, text='area day_month_year temperature
d1 09_11_2013 18,723
d1 09_11_2013 17,558
d1 09_11_2013 16,963
d1 09_11_2013 22,753
d1 09_11_2013 28,468
d1 09_11_2013 30,495
d1 09_11_2013 26,818
d1 09_11_2013 22,944
d1 10_11_2013 21,318
i1 09_11_2013 18,485
i1 09_11_2013 17,368
i1 09_11_2013 16,844
i1 09_11_2013 24,171
i1 09_11_2013 28,072
i1 09_11_2013 28,766
i1 09_11_2013 25,744
i1 09_11_2013 22,920
i1 10_11_2013 21,246
i1 10_11_2013 20,103
c1 09_11_2013 17,272
c1 09_11_2013 16,225
c1 09_11_2013 16,058
c1 09_11_2013 22,920
c1 09_11_2013 27,776
c1 09_11_2013 28,642
c1 09_11_2013 26,256
c1 09_11_2013 21,652
c1 10_11_2013 19,793
c1 10_11_2013 18,628
c1 10_11_2013 17,796')
# convert temp to numeric data
dat$temp=as.numeric(gsub(',','.',dat$temp))
# convert day_month_year to date and add to dataframe
dat$date=as.Date(dat$day_month_year,"%d_%m_%Y")
# scatter plot by group
library(ggplot2)
ggplot(dat, aes(x=date, y=temp, colour=area, group=area)) + geom_point()
我注意到您更改了数据中日期的格式。此解决方案使用您的原始格式。如果要继续使用具有月份名称的新格式,则需要修改as.Date强制转换。