融化后如何在 geom_line 中的 ggplot 中的同一图上绘制多个变量?
How to plot multiple variables on the same plot in ggplot in geom_line after melting?
我有一个小问题,其中原始 df 的列名由变量 col 中的值给出,我使用 id.vars=Country
将其融入长格式,然后使用 melt
获得它。这是在同一个 x 轴上按年份绘制 AGR_LogLabProd、MIN_LogLabProd、MAN_LogLabProd 的不同值。
CHN4
Country Year variable value
---------------------------
1 CHN 1958 AGR_LogLabProd 14.81782
2 CHN 1959 AGR_LogLabProd 14.61870
3 CHN 1960 AGR_LogLabProd 14.41969
4 CHN 1961 AGR_LogLabProd 14.28257
5 CHN 1958 MIN_LogLabProd 13.67850
6 CHN 1959 MIN_LogLabProd 14.24685
7 CHN 1960 MIN_LogLabProd 14.57734
8 CHN 1961 MIN_LogLabProd 14.59046
9 CHN 1958 MAN_LogLabProd 13.29359
10 CHN 1959 MAN_LogLabProd 13.86194
11 CHN 1960 MAN_LogLabProd 14.19243
12 CHN 1961 MAN_LogLabProd 14.20556
我使用 ggplot(CHN4, aes(x=Year, y=value))+geom_line()
但是它给了我一个奇怪的图(在附图中给出),而不是像预期的那样为变量列中的每个变量单独的行。有什么问题的线索吗?
这是一个很常见的问题。您需要包括一个分组变量。如果你想为每个不同的级别使用颜色,你可以使用
library(ggplot2)
ggplot(CHN4, aes(x=Year, y=value, color = variable)) +
geom_line()
但如果您不喜欢颜色,也可以
library(ggplot2)
ggplot(CHN4, aes(x=Year, y=value, group = variable)) +
geom_line()
我有一个小问题,其中原始 df 的列名由变量 col 中的值给出,我使用 id.vars=Country
将其融入长格式,然后使用 melt
获得它。这是在同一个 x 轴上按年份绘制 AGR_LogLabProd、MIN_LogLabProd、MAN_LogLabProd 的不同值。
CHN4
Country Year variable value
---------------------------
1 CHN 1958 AGR_LogLabProd 14.81782
2 CHN 1959 AGR_LogLabProd 14.61870
3 CHN 1960 AGR_LogLabProd 14.41969
4 CHN 1961 AGR_LogLabProd 14.28257
5 CHN 1958 MIN_LogLabProd 13.67850
6 CHN 1959 MIN_LogLabProd 14.24685
7 CHN 1960 MIN_LogLabProd 14.57734
8 CHN 1961 MIN_LogLabProd 14.59046
9 CHN 1958 MAN_LogLabProd 13.29359
10 CHN 1959 MAN_LogLabProd 13.86194
11 CHN 1960 MAN_LogLabProd 14.19243
12 CHN 1961 MAN_LogLabProd 14.20556
我使用 ggplot(CHN4, aes(x=Year, y=value))+geom_line()
但是它给了我一个奇怪的图(在附图中给出)
这是一个很常见的问题。您需要包括一个分组变量。如果你想为每个不同的级别使用颜色,你可以使用
library(ggplot2)
ggplot(CHN4, aes(x=Year, y=value, color = variable)) +
geom_line()
但如果您不喜欢颜色,也可以
library(ggplot2)
ggplot(CHN4, aes(x=Year, y=value, group = variable)) +
geom_line()