我在绘制带有R的时间序列时遇到一个问题。 基本上,我的数据存储在这样的数据帧中:
datetime | measure
2018-04-09 00:40:05 | 3.4
2018-04-09 00:41:00 | 3.9
2018-04-09 00:42:07 | 3.8
2018-04-09 00:43:00 | 3.7
2018-04-09 00:44:00 | 4.2
2018-04-09 00:45:00 | 5.8
2018-04-09 01:15:00 | 5.8
观察的间隔不均匀,我每分钟观察一次,但大致上可能相差几秒钟。 然后,我在观察值之间有更大的差距,在我放置的示例中,上一个观察值与上一个观察值之间存在30分钟的差距。
很明显,Plotly正在连接折线图中的最后两个观察值,实际上我希望它们之间有一个空白。
感谢您的帮助和考虑!
答案 0 :(得分:1)
您可以通过将数据划分为“块”并将每个数据绘制为单独的迹线来实现。可复制的示例:
select
q.*
from
(select
query,
max(clicks) as clicks
from
search_console_query
where
update_date >= '2018-05-01' and
update_date <= '2018-05-31' and
website_id = 2
group by query) as t
inner join
search_console_query q on q.query = t.query and q.clicks = t.clicks
自然地,您需要找到一种有意义的方式对数据进行分组,即,如果观测值之间的时间差大于 [指定您的临界值] ,请移至新的块。
答案 1 :(得分:0)
尝试使用connectgaps=False
;检查https://plotly.com/r/line-charts/#connect-data-gaps