简体   繁体   English

在ggplot中绘制多条线

[英]plot multiple lines in ggplot

I need to plot hourly data for different days using ggplot, and here is my dataset:我需要使用 ggplot 绘制不同日期的每小时数据,这是我的数据集:

在此处输入图像描述

The data consists of hourly observations, and I want to plot each day's observation into one separate line.数据由每小时的观察值组成,我想将每天的观察值绘制成一条单独的线。

Here is my code这是我的代码

xbj1 = bj[c(1:24),c(1,6)]

xbj2 = bj[c(24:47),c(1,6)] xbj3 = bj[c(48:71),c(1,6)] xbj2 = bj[c(24:47),c(1,6)] xbj3 = bj[c(48:71),c(1,6)]

ggplot()+
geom_line(data = xbj1,aes(x = Date, y= Value), colour="blue") +
geom_line(data = xbj2,aes(x = Date, y= Value), colour = "grey") + 
geom_line(data = xbj3,aes(x = Date, y= Value), colour = "green") +
xlab('Hour') +
ylab('PM2.5')

Please advice on this.请就此提出建议。

I'll make some fake data (I won't try to transcribe yours) first:我会先做一些假数据(我不会尝试转录你的):

set.seed(2)
x <- data.frame(
  Date = rep(Sys.Date() + 0:1, each = 24),
  # Year, Month, Day ... are not used here
  Hour = rep(0:23, times = 2),
  Value = sample(1e2, size = 48, replace = TRUE)
)

This is a straight-forward ggplot2 plot:这是一个简单的ggplot2图:

library(ggplot2)
ggplot(x) +
  geom_line(aes(Hour, Value, color = as.factor(Date))) +
  scale_color_discrete(name = "Date")

示例 ggplot

ggplot(x) +
  geom_line(aes(Hour, Value)) +
  facet_grid(Date ~ .)

示例 ggplot,多面

I highly recommend you find good tutorials for ggplot2 , such as http://www.cookbook-r.com/Graphs/ .我强烈建议您找到ggplot2的好教程,例如http://www.cookbook-r.com/Graphs/ Others exist, many quite good.其他存在,很多都很好。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM