我的问题与此问题的第二个答案以及我之前的问题(发布在下面)有关。
Proper way to plot multiple data series in ggplot with custom colors, legend etc
如何根据用户的需求(即第一个和第三个,所有四个等)绘制一条线的子集?目前我正在使用基础plot()
,并希望更改为ggplot2
解决方案。我需要解决时间序列长度不均匀的问题,如原始问题所示。我正在尝试使用以下语法simialr,但没有成功:
ggplot(data = dat, aes(x=x, y=y)) + geom_line(aes(y = y[dat$grp == "a"], colour=grp)) + geom_point()
Error: Aesthetics must be either length 1 or the same as the data (20): y, colour, x
P.S。:对于那些感兴趣的人,这就是我想要做的事情(我保持上一个问题的更新,但我是唯一一个在那里发帖): 我正在尝试将此功能构建到我的Shiny应用程序中。即用户选择一些参数,我将其转换为一组ID,这些ID对应于我的数据框中的时间序列子集,并且该图输出所选择的行子集。
Shiny + ggplot2: plotting a number of lines in one graph based on user input