【发布时间】:2019-07-09 13:36:02
【问题描述】:
我正在尝试在 ** R ** 上以 ** plotly ** 绘制每天销售的不同类型汽车的折线图。该图表的外观是,它将包含每天售出的每种汽车的折线图。所以假设我有一个名为 ** df1 ** 的数据框
id date Value
Honda 10/30/12 2
Honda 10/31/12 3
Honda 11/1/12 3
Merc 11/2/12 4
Merc 10/30/12 1
Merc 10/31/12 2
Toyota 11/1/12 3
Toyota 11/3/12 2
现在我想在同一个 x 轴上设置三条线(每种类型的汽车一条线)。
我尝试在 y axis 参数中使用 filter() 函数,如下所示:
plot_ly(df1,x=~date)%>%
add_trace(y=filter(df1,id=="Honda")$value,name="Honda",mode="lines+markers")%>%
add_trace(y=filter(df1,id=="Merc")$value,name="Honda",mode="lines+markers")%>%
add_trace(y=filter(df1,id=="Toyota")$value,name="Honda",mode="lines+markers")%>%
layout(xaxis=list(title="Date"),yaxis=list(title="Cars Sold"))
但是我得到了错误
错误:Tibble 列必须具有一致的长度,只有长度为 1 的值被回收: * 长度 3:列
y* 长度 8:列x调用`rlang::last_erro()
我知道它会抛出一个错误,因为 x 值更多而 y 值更少,我该如何解决?
【问题讨论】: