【发布时间】:2021-06-06 07:47:59
【问题描述】:
我想在同一个图表中绘制多条线。每条线代表一个年龄组 (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, type = 'scatter', mode = 'line', 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 制作的相同图表?
【问题讨论】:
-
嗨。首先,
geom_point()根本不应该是连接点。geom_line()按 X 的顺序连接它们。geom_path()按出现在数据框中的顺序连接它们。除此之外,您的 ggplot2 代码看起来是正确的,应该可以按预期工作。 -
其次,您的情节示例不等同于 ggplot。您不是通过变量着色,而是显式地绘制两条单独的线。您始终可以像 plotly 那样拆分数据框并绘制两条单独的线。
-
最后,当您粘贴大表时,人们很难重新创建您的示例。
dput()的输出会非常有用。或者在这种情况下,数据看起来像公共 covid 数据,因此指向源的链接将是最简单的选择。