我有一个带一栏和两个标签集的flexdashboard。我想在一个选项卡集中创建和绘制dat2
,然后在另一个选项卡集中显示dat2
的数据。实际的用例更加复杂,我没有将其设置为从全局运行(也许我需要弄清楚该怎么做)。
以下结果导致无法找到dat2
的错误。
---
title: "test"
output:
flexdashboard::flex_dashboard:
theme: bootstrap
runtime: shiny
---
```{r setup, include=FALSE}
library(flexdashboard)
library(tidyverse)
```
```{r global, include=FALSE}
set.seed(1)
dat <- data.frame(age = sample(15:99, 100, replace=TRUE),
y = runif(100))
```
Sidebar {.sidebar}
=====================================
```{r}
# age
sliderInput("agerange", label = "Age",
min = 15,
max = 99,
value = c(15, 99),
step=10)
```
Page 1
=====================================
Column {.tabset}
-----------------------------------------------------------------------
### Plot
```{r}
renderPlot({
dat2 <-
dat %>%
filter(age >= input$agerange[1] & age <= input$agerange[2]) %>%
mutate(y2 = y*2)
ggplot(dat2, aes(y2)) +
geom_histogram()
})
```
Column {.tabset}
-----------------------------------------------------------------------
### Table
```{r}
DT::renderDataTable({
DT::datatable(dat2, options = list(bPaginate = FALSE))
})
```
答案 0 :(得分:0)
这似乎可行(基于this SO answer)。更简单的方法是在那里进行修复,或者是进行反应式计算的基本方法,将其分配给反应式内部的sudo apt-get install libbz2-dev
pyenv uninstall 2.7.15
pyenv install 2.7.15
,然后在object
函数中重新分配该对象(例如,render
) ?
object <- object()