100 lines
1.5 KiB
Plaintext
100 lines
1.5 KiB
Plaintext
|
---
|
||
|
title: "Untitled"
|
||
|
format: html
|
||
|
---
|
||
|
|
||
|
# R: Import Data
|
||
|
|
||
|
```{r warning=FALSE, message=FALSE}
|
||
|
library(tidyverse)
|
||
|
# install.packages("here)
|
||
|
|
||
|
```
|
||
|
|
||
|
```{r}
|
||
|
data <- readr::read_rds(here::here("data", "processed", "survey_with_labels.rds"))
|
||
|
```
|
||
|
|
||
|
```{r include=FALSE}
|
||
|
head(data)
|
||
|
```
|
||
|
## R: Transpose Data for OJS
|
||
|
|
||
|
```{r}
|
||
|
data_ojs <- data %>% transpose()
|
||
|
```
|
||
|
|
||
|
# Exploration
|
||
|
|
||
|
## R: Expose Data to JS
|
||
|
|
||
|
```{r}
|
||
|
ojs_define(data = data_ojs)
|
||
|
ojs_define(varnames = names(data))
|
||
|
ojs_define(qlabels = attributes(data)$variable.labels)
|
||
|
```
|
||
|
|
||
|
# R + OJS: Interaction
|
||
|
|
||
|
## OJS: Dropdown
|
||
|
|
||
|
```{ojs}
|
||
|
viewof varname_selected = Inputs.select(varnames,
|
||
|
{label: "Filter nach:"}
|
||
|
)
|
||
|
```
|
||
|
|
||
|
```{ojs}
|
||
|
viewof filter_val = Inputs.select(varnames,
|
||
|
{label: "Filter nach:"}
|
||
|
)
|
||
|
```
|
||
|
|
||
|
## OJS: Table
|
||
|
|
||
|
```{ojs}
|
||
|
viewof tableData = Inputs.table(
|
||
|
data,
|
||
|
{
|
||
|
sort: varname_selected, required: false
|
||
|
}
|
||
|
)
|
||
|
```
|
||
|
|
||
|
## MAIN: Dynamic ggplot
|
||
|
|
||
|
```{ojs}
|
||
|
//| echo: false
|
||
|
viewof var_x = Inputs.select(varnames,
|
||
|
{label: "X Variable"}
|
||
|
)
|
||
|
```
|
||
|
|
||
|
|
||
|
```{ojs}
|
||
|
//| echo: false
|
||
|
viewof var_y = Inputs.select(varnames,
|
||
|
{label: "Y Variable"}
|
||
|
)
|
||
|
```
|
||
|
|
||
|
```{ojs}
|
||
|
//| echo: false
|
||
|
chart = Plot.plot({
|
||
|
inset: 8,
|
||
|
grid: true,
|
||
|
marks: [
|
||
|
Plot.dot(data,
|
||
|
Plot.group({r: "count", fill: "count"}, {x: var_x, y: var_y})
|
||
|
)
|
||
|
],
|
||
|
color: {
|
||
|
type: "linear",
|
||
|
range: ["steelblue", "orange"] // uses d3.interpolateRgb
|
||
|
},
|
||
|
r: {
|
||
|
range: [0, 20]
|
||
|
},
|
||
|
})
|
||
|
```
|