我的数据框df
在其两列中包含以下值:
Year Temperature
1750 8.719364
1751 7.976143
1752 5.779833
1753 8.388083
1754 8.469333
1755 8.355583
1756 8.849583
1757 9.022000
1758 6.743583
1759 7.985083
1760 7.185167
以及相应温度的约200年。
我试图用剧情绘制时间序列图。
library(plotly)
g <- plot_ly(x=~df$Year, y=~df$Temperature, add_trace("scatter"), mode='lines')
它给了我
错误:$运算符对原子向量无效。
所以,我尝试将列分配到单独的向量中,如下所示,以避免使用$
:
x <- avg.temp$Year
y <- avg.temp$Avg.Temp
g <- plot_ly(x=~x, y=~y, add_trace("scatter"), mode='lines')
但我仍然得到同样的错误。
我是R的新手。我只是想用年份和温度数据创建一个简单的时间序列图。但我无法弄清楚我的代码到底出了什么问题。有人可以帮我解决这个错误吗?
另外,add_trace("scatter")
参数是什么?它有什么作用?我使用它是因为我之前在相同的数据上创建了一个图表,但它不是一行。它太厚了,它给了我一个警告,告诉我scatter
跟踪在这里是合适的(或类似的......)
答案 0 :(得分:0)
此代码创建的图表没有错误:
g <- plot_ly(df, x = ~Year) %>%
add_trace(type="scatter", y=~Temperature, name="Trace Temperature", mode="lines")
在致电add_trace
后致电plotly
以避免错误。
另一种写得更接近现有的方式是:
g <- plot_ly(x=~df$Year, y=~df$Temperature, mode="lines")
add_trace(g, type="scatter")
不幸的是,我无法解释跟踪的内容。希望无论如何都有帮助!