The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.

R htmlwidgets binding for the FINOS Perspective library – a high-performance WebAssembly-powered data visualization engine with interactive pivot tables and multiple chart types.
# Install from GitHub
remotes::install_github("EydlinIlya/perspectiveR")
# Or using pak
pak::pak("EydlinIlya/perspectiveR")
# Or using devtools
devtools::install_github("EydlinIlya/perspectiveR")library(perspectiveR)
# Interactive data grid with full self-service UI
perspective(mtcars)
# Bar chart grouped by cylinder count
perspective(mtcars, group_by = "cyl", plugin = "Y Bar")
# Filtered scatter plot
perspective(iris,
columns = c("Sepal.Length", "Sepal.Width", "Species"),
filter = list(c("Species", "==", "setosa")),
plugin = "Y Scatter"
)limit), data export, table metadata
queries, and state save/restorefilter_op = "and" or filter_op = "or"arrow
package integration for efficient serialization of large datasetsTwo interactive demos are bundled with the package:
library(perspectiveR)
run_example() # list all available demos
run_example("shiny-basic")
run_example("crud-table")library(shiny)
library(perspectiveR)
ui <- fluidPage(
selectInput("dataset", "Dataset:",
choices = c("mtcars", "iris", "airquality")
),
perspectiveOutput("viewer", height = "600px")
)
server <- function(input, output, session) {
output$viewer <- renderPerspective({
data <- switch(input$dataset,
"mtcars" = mtcars,
"iris" = iris,
"airquality" = airquality
)
perspective(data)
})
}
shinyApp(ui, server)psp_update(proxy, data) — append new rows (upserts when
table has an index)psp_replace(proxy, data) — replace all datapsp_clear(proxy) — clear all rowspsp_restore(proxy, config) — apply a saved configpsp_reset(proxy) — reset viewer to defaultspsp_remove(proxy, keys) — remove rows by primary key
(indexed tables)psp_export(proxy, format) — export data (JSON, CSV,
columns, or Arrow); supports windowed export with
start_row/end_row/start_col/end_colpsp_save(proxy) — retrieve current viewer statepsp_on_update(proxy, enable) — subscribe to data change
eventspsp_schema(proxy) — get table schema (column names and
types)psp_size(proxy) — get table row countpsp_columns(proxy) — get table column namespsp_validate_expressions(proxy, expressions) — validate
expression stringsThe pre-built JS bundle is included. To rebuild from source:
cd tools
npm install
npm run build
npm run copy-themesApache License 2.0
‘Perspective’ is a project of the OpenJS Foundation. perspectiveR is an independent community package and is not affiliated with or endorsed by the OpenJS Foundation.
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.