问题描述
我想在同一个图表中绘制多条线。每行代表一个年龄组 (grupo_edad)。 x 轴是通报病例的周数(epiweek),y 轴是发病率(inc)。
这是我的数据:
inc_015
当我使用 plotly 时,结果是完美的:
p <- plot_ly()%>%
layout(title = "Curvas de tasas de incidencia de casos notificados de COVID-19 \n en la Región Metropolitana,según grupo etario y semana epidemiológica primeros síntomas",xaxis = list(title = "Semana Epidemiológica"),yaxis = list (title = "Tasa x 100.000 habitantes") ) %>%
add_trace(x = inc_015$epiweek,y = inc_015$inc,type = 'scatter',mode = 'line',name = '0 a 15',line=list(color='#16e3ff',dash='dashed')) %>%
add_trace(x = inc_1525$epiweek,y = inc_1525$inc,name = '15 a 25',line=list(color='#00c9e4',dash='dashed'))
p
但是当我尝试使用 ggplot 时,结果完全不同,点是垂直连接的
ggplot(data=incidencia1,aes(x=epiweek,y=inc,colour=grupo_edad)) +
geom_point()
谁能告诉我如何显示我在 ggplot2 中用 plotly 制作的相同图形?
解决方法
对于 Sheet2
,在这种情况下,您需要指定 ggplot2
美学,它与 group
相同
colour
,
如果有人需要答案,这里是解决方案:
incidencia1$grupo_edad <- incidencia1$grupo_edad %>% as.factor()
f <- ggplot(data=incidencia1,aes(x=epiweek,y=inc,group=grupo_edad,col=grupo_edad)) +
geom_path() +
scale_color_manual(name = 'Grupo Etario',labels = c("0-14","15-24",'25-49','50-64','65-80','>=80'),values = c("#FDD700",'red',"#FE882D","darkolivegreen3",'darkblue','deepskyblue3')) +
theme_ipsum_rc(grid = 'Y') + theme(axis.text.x = element_text(angle = 90)) +
xlab('Semana Epidemiológica') +
ylab('Tasa de Incidencia') + theme(axis.text.x = element_text(angle = 90)) +
labs(title = 'Curvas de tasas de incidencia de casos notificados de COVID-19',subtitle = 'Región Metropolitana,según grupo etario y semana epidemiológica primeros síntomas')
f
感谢@Sinh Nguyen,很抱歉不知道如何给你贴标签