---
output: js4shiny::html_document_js
---
```{r htmldeps, echo=FALSE}
library(htmltools)
tagList(
div(id = "chart"),
htmltools::htmlDependency(
name = "frappe-charts",
version = "1.3.0",
package = "frappeCharts",
src = "htmlwidgets/lib/frappe-charts",
script = "frappe-charts.min.iife.js",
all_files = TRUE
)
)
```
```{r data}
data <- list(
labels = c("Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"),
datasets = list(
list(name = "R", values = runif(8, 0, 100)),
list(name = "Python", values = runif(8, 0, 50))
)
)
tags$script(
id = "data",
type = "application/json",
htmlwidgets:::toJSON(data)
)
```
```{js}
let data = document.getElementById('data')
data = JSON.parse(data.textContent)
const chart = new frappe.Chart("#chart", { // or a DOM element,
// new Chart() in case of ES6 module with above usage
title: "My Awesome Chart",
data: data,
type: 'line',
height: 250,
colors: ['#7cd6fd', '#743ee2']
})
```