Replies: 1 comment
-
If you want to use a value from a shiny context, you need to build the UI in the shiny context too, using the value. So you need to build you UI element using shiny in that case I believe ---
title: "Iris K-Means Clustering"
format:
html:
page-layout: custom
server: shiny
---
```{r}
#| panel: sidebar
vars <- setdiff(names(iris), "Species")
selectInput('xcol', 'X Variable', vars)
selectInput('ycol', 'Y Variable', vars, selected = vars[[2]])
numericInput('clusters', 'Cluster count', 3, min = 1, max = 9)
```
```{r}
#| panel: fill
plotOutput('plot1')
```
```{r}
#| context: server
selectedData <- reactive({
iris[, c(input$xcol, input$ycol)]
})
clusters <- reactive({
kmeans(selectedData(), input$clusters)
})
output$plot1 <- renderPlot({
palette(c("#E41A1C", "#377EB8", "#4DAF4A", "#984EA3",
"#FF7F00", "#FFFF33", "#A65628", "#F781BF", "#999999"))
par(mar = c(5.1, 4.1, 0, 1))
plot(selectedData(),
col = clusters()$cluster,
pch = 20, cex = 3)
points(clusters()$centers, pch = 4, cex = 4, lwd = 4)
})
```
```{r}
shiny::htmlOutput("synthesis")
```
```{r}
#| context: server
output$synthesis <- renderUI({
markdown(glue::glue("The **sepal width mean** is { mean(selectedData()[, 2]) }"))
})
```
Yes you can have several context Overall this is not a Quarto specific question and you could find more about shiny and rmarkdown usage on the web (as rmarkdown is older). It would work the same. Also asking on shiny forum could help too (like https://community.rstudio.com/c/shiny/8) Hope it helps |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Description
Initially, I am filtering my data according to user input. Next, I would like to insert dynamic objects into the body of the text, such as: inserting an average of the filtered data in the text.
Additionally, I would like to know if it is possible to create multiple chunks with
#|context: server
- my document has texts between plots and tables (which must be within a#|context: server
).Beta Was this translation helpful? Give feedback.
All reactions