R 如何在图形线上绘制不同颜色并插入图例(颜色和列标题)
我试着给每一行指定颜色。但是,我想不出如何显示图例结果R 如何在图形线上绘制不同颜色并插入图例(颜色和列标题),r,ggplot2,graph,colors,scale-color-manual,R,Ggplot2,Graph,Colors,Scale Color Manual,我试着给每一行指定颜色。但是,我想不出如何显示图例结果 groupcolours <- c(NE="#999999",NS="#E69F00",NW="#56B4E9",NN="#009E73") 如评论中所述,请不要将数据添加为图像。而是使用dput,这样每个人都可以处理数据 查看您的数据图像,数据的格式似乎很宽。 要绘制附着的图形,您可以将数据转换为长格式(使用包restrape2或dplyr中的聚集函数),然后将方向变量添加为组和颜色变量 例如(使用模拟数据): library(重
groupcolours <- c(NE="#999999",NS="#E69F00",NW="#56B4E9",NN="#009E73")
如评论中所述,请不要将数据添加为图像。而是使用
dput
,这样每个人都可以处理数据
查看您的数据图像,数据的格式似乎很宽。
要绘制附着的图形,您可以将数据转换为长格式(使用包restrape2
或dplyr
中的聚集函数),然后将方向变量添加为组和颜色变量
例如(使用模拟数据):
library(重塑2)
图书馆(tidyverse)
时间戳在帖子上面有两个图像。请不要将数据作为图像发布。例如,使用dput
。问题在于,正如错误告诉您的那样,您的美学具有不同的长度(aes中的内容)。您尝试分配color
向量groupcolors
,该向量短于例如时间间隔
.THX。融化让我这么做。
s <- ggplot(time_interval_RSE2) +
ggtitle(paste(main_rse_temp,"_",naljja,"_교통량", sep="")) +
labs(x="시간(15분 단위)", y="교통량(대수/15분)") +
theme(axis.text.x=element_text(size=12,angle=90,hjust=1,vjust=0.5),axis.text.y = element_text(size=19),plot.title = element_text(size=25),axis.title.y=element_text(colour="black",size=30),axis.title.x = element_text(colour="black",size=30)) +
scale_y_continuous(limits=c(0, 100)) +
geom_line(aes(x=time_interval,y=as.numeric(NE),group=1,colour=groupcolours)) +
geom_line(aes(x=time_interval,y=as.numeric(NS),group=2,colour=groupcolours)) +
geom_line(aes(x=time_interval,y=as.numeric(NW),group=3,colour=groupcolours)) +
geom_line(aes(x=time_interval,y=as.numeric(NN),group=4,colour=groupcolours)) +
scale_color_manual(name="Direction", values =groupcolours)
["time_interval_RSE2" file download][3]
library(reshape2)
library(tidyverse)
Timestamp <- c("30-07-2019 23:00:00", "31-07-2019 00:00:00", "31-07-2019 01:00:00",
"31-07-2019 02:00:00", "31-07-2019 03:00:00", "31-07-2019 04:00:00",
"31-07-2019 05:00:00", "31-07-2019 06:00:00", "31-07-2019 07:00:00",
"31-07-2019 02:00:00", "31-07-2019 09:00:00", "31-07-2019 10:00:00",
"31-07-2019 11:00:00", "31-07-2019 12:00:00", "31-07-2019 13:00:00",
"31-07-2019 14:00:00", "31-07-2019 15:00:00", "31-07-2019 16:00:00",
"31-07-2019 17:00:00", "31-07-2019 18:00:00", "31-07-2019 19:00:00",
"31-07-2019 20:00:00", "31-07-2019 21:00:00", "31-07-2019 22:00:00",
"31-07-2019 23:00:00", "01-08-2019 00:00:00", "01-08-2019 01:00:00"
)
dat <- data.frame(Timestamp,
NE = sample(1:10, length(Timestamp), replace=TRUE),
NS = sample(1:16, length(Timestamp), replace=TRUE),
NW = sample(1:3, length(Timestamp), replace=TRUE))
melt(dat, id="Timestamp") %>%
ggplot(aes(Timestamp, value, group=variable, color=variable)) +
geom_line()