Я пытаюсь автоматически масштабировать ось y {plotly} точечной диаграммы, когда она выбирается другим виджетом (например, DT).
Функция уже выполнена путем выбора атрибутом легенды, ноне при выборе с помощью перекрестных помех.
С помощью pllotly :: highlight () есть несколько опций, но я не думаю, что функция делает то, что я хочу.
Здесь представлены:
---
title: "Crosstalk with plotly and DT"
output: html_document
editor_options:
chunk_output_type: console
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE)
library(crosstalk)
library(dplyr)
library(lubridate)
library(stats)
library(DT)
library(plotly)
```
```{r}
df <- tibble::tibble(key = c(rep("ABCD", 10),
rep("EFGH", 10)),
Timestamp = c(seq.Date(lubridate::today(),
lubridate::today() + lubridate::ddays(9),
by = "day"),
seq.Date(lubridate::today(),
lubridate::today() + lubridate::ddays(9),
by = "day")),
Value = c(stats::rnorm(10, 5),
stats::rnorm(10, 20)))
```
```{r}
sd_unique <- crosstalk::SharedData$new(df %>% dplyr::distinct(key),
key = ~key,
group = "Test")
sd_all <- crosstalk::SharedData$new(df,
key = ~key,
group = "Test")
```
```{r}
crosstalk::bscols(
DT::datatable(sd_unique),
plotly::plot_ly(data = sd_all,
x = ~Timestamp,
y = ~Value,
color = ~key,
type = "scatter",
mode = "markers")
)
```