gpt4 book ai didi

R dygraph跳过多图显示的缺失值

转载 作者:行者123 更新时间:2023-12-02 08:25:45 27 4
gpt4 key购买 nike

我在用 dgraph 绘制多条线时遇到了一个问题,

我有一个如下所示的数据框,它包含时间、 channel 和 SNR 值,我想显示每个 channel 的 SNR 值,我希望 dygraph 在数据集中显示 8 条线(它有 8 个 channel )。

 head(gateSNR_df)
time channel SNR
1 2015-09-03 02:40:44 6 -125
2 2015-09-03 02:40:49 3 -95
3 2015-09-03 02:40:54 0 22
4 2015-09-03 02:40:59 0 28
5 2015-09-03 02:41:04 5 -125
6 2015-09-03 02:41:09 2 -52
........
.........

所以我使用 reshape2:dcast 进行 reshape

gateSNR_c <- dcast(gateSNR_df, time~channel, value.var="SNR")
head(gateSNR_c)
time 0 1 2 3 4 5 6 7
1 2015-09-03 02:40:44 NA NA NA NA NA NA -125 NA
2 2015-09-03 02:40:49 NA NA NA -95 NA NA NA NA
3 2015-09-03 02:40:54 22 NA NA NA NA NA NA NA
4 2015-09-03 02:40:59 28 NA NA NA NA NA NA NA
5 2015-09-03 02:41:04 NA NA NA NA NA -125 NA NA
6 2015-09-03 02:41:09 NA NA -52 NA NA NA NA NA

然后我更改为 XTS 对象以显示 dygraph

> gateSNR_xts <- xts(gateSNR_c[,-1], as.POSIXct(gateSNR_c[,1]))
>
>
> head(gateSNR_xts)
0 1 2 3 4 5 6 7
2015-09-03 02:40:44 NA NA NA NA NA NA -125 NA
2015-09-03 02:40:49 NA NA NA -95 NA NA NA NA
2015-09-03 02:40:54 22 NA NA NA NA NA NA NA
2015-09-03 02:40:59 28 NA NA NA NA NA NA NA
2015-09-03 02:41:04 NA NA NA NA NA -125 NA NA
2015-09-03 02:41:09 NA NA -52 NA NA NA NA NA
>

由于 NA 值,dygraph(gateSNR_xts) 无法正常工作,我不能只省略 NA,因为它可能会丢失整个条目。

Q1:无论如何,R 是否可以绘制每条线并跳过 NA 值?Q2:如果没有,我可以生成 8 个 xts。如何在一个 dygraph 中显示 8 xts 行?

感谢您的帮助詹姆斯

最佳答案

您需要使用 dygraphs::dyOptions 并将选项 connectSeparatedPoints 设置为 TRUE

例子

set.seed(123)
library(dygraphs)
mdeaths[sample(seq_along(mdeaths), 20)] <- NA
ldeaths[sample(seq_along(ldeaths), 20)] <- NA
lungDeaths <- cbind(ldeaths, mdeaths)

dygraph(lungDeaths) %>%
dyOptions(connectSeparatedPoints = TRUE)

更多信息:dygraphs官方文档http://dygraphs.com/options.html#connectSeparatedPoints

关于R dygraph跳过多图显示的缺失值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32389846/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com