gpt4 book ai didi

r - 使用按时间范围过滤的共享数据创建交互式条形图

转载 作者:行者123 更新时间:2023-12-03 20:50:02 25 4
gpt4 key购买 nike

我想创建一个交互式条形图,让用户可以根据一系列值过滤观察结果,然后动态呈现所选时间段内每个类的计数。由于过滤后的数据需要可用于众多此类图表,因此我想到了 的组合。串扰情节/ggplot 可能证明是有值(value)的。
我在下面附加了一个 reprex,它使用来自 的共享数据和过滤功能。串扰允许动态过滤部分。当我编织文档时,只要选择了全部范围的值(默认值),条形图就会很好地呈现。
full
但是,绘图区域对于任何其他区域都为空,即。用户调整范围。
partial
我到底错过了什么?我认为完整和过滤的共享数据集之间肯定存在差异ggplotly()无法妥善处理。也许我可以遵循另一种方法来实现我的目标?
这是我的 .Rmd 文件的内容:

---
title: mpg class counts filtered by time period
output: html_document
---

```{r echo = FALSE, message = FALSE, warning = FALSE}
library(crosstalk)
library(plotly)

# Wrap data frame in SharedData
sd = SharedData$new(mpg)

# Create a filter input
filter_slider("Year", "Year", sd, column = ~ year, step = 1, width = 250)

# Render graph
bscols(
ggplotly(
ggplot(aes(x = class), data = sd) +
geom_bar()
)
)

```

最佳答案

我认为这可能是因为“Crosstalk 目前仅适用于显示单个数据点的 View 的链接刷亮和过滤,而不适用于聚合或汇总 View (其中“观察”被定义为数据框中的单行)。例如,直方图不受支持,因为每个条形代表多个数据点;但散点图点每个代表一个数据点,因此它们是受支持的。” official doc
如果您将其更改为点图,它似乎可以正常工作。

---
title: mpg class counts filtered by time period
output: html_document
---

```{r echo = FALSE, message = FALSE, warning = FALSE}
library(data.table)
library(crosstalk)
library(plotly)

# Wrap data frame in SharedData
sd = SharedData$new(mpg)

# Create a filter input
filter_slider("Year", "Year", sd, column = ~ year, step = 1, width = 250)

# Render graph
bscols(
ggplotly(
ggplot(aes(hwy, cty), data = sd) +
geom_point()
)
)

```

关于r - 使用按时间范围过滤的共享数据创建交互式条形图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63358511/

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