- v0.16.5Latest
- v0.16.4
- v0.16.3
- v0.16.2
- v0.16.1
- v0.16.0
- v0.15.13
- v0.15.12
- v0.15.11
- v0.15.10
- v0.15.9
- v0.15.8
- v0.15.7
- v0.15.6
- v0.15.5
- v0.15.4
- v0.15.3
- v0.15.2
- v0.15.1
- v0.15.0
- v0.14.13
- v0.14.12
- v0.14.11
- v0.14.10
- v0.14.9
- v0.14.8
- v0.14.7
- v0.14.6
- v0.14.5
- v0.14.4
- v0.14.3
- v0.14.2
- v0.14.1
- v0.14.0
- v0.13.15
- v0.13.14
- v0.13.13
- v0.13.12
- v0.13.11
- v0.13.10
- v0.13.9
- v0.13.8
- v0.13.7
- v0.13.6
- v0.13.5
- v0.13.4
- v0.13.3
- v0.13.2
- v0.13.1
- v0.13.0
- v0.12.4
- v0.12.3
- v0.12.2
- v0.12.1
- v0.12.0
- v0.11.6
- v0.11.5
- v0.11.4
- v0.11.3
- v0.11.2
- v0.11.1
- v0.11.0
- v0.10.6
- v0.10.5
- v0.10.4
- v0.10.3
- v0.10.2
- v0.10.1
- v0.10.0
OI Lume Viz
Open Innovations charting in Lume
At Open Innovations, we’ve started using the Lume Static Site Generator to build data microsites for people. This gives us the benefits of a static HTML site, with associated manageability, efficiency, and maintainability benefits, whilst giving us a framework for extending.
To support some of the more complex visualisations we undertake, we’ve encapsulated a number of our charting libraries in this. With each one we aim to keep bandwidth use down and only use limited front-end Javascript to add some interactivity.
Using the library
To use this in your Lume project, include the following in your Lume _config.js
or _config.ts
file.
WARNING! This is strictly a pre-release version, and interfaces are very likely to change.
import oiCharts from 'oi-lume-charts/mod.ts';
site.use(oiCharts({
assetPath: 'assets/oi',
componentNamespace: 'oi',
}));
You can provide the following options:
assetPath
path to locate the Javascript assets that are loaded (default:/assets
)componentNamespace
namespace where the charts are accessible e.g.comp.oi.dashboard()
(default:oi
)
Visualisation types
TODO add some documentation!
dashboard
Creates a simple panelled dashboard. See dashboard samples.
chart.bar
Creates a simple horizontal bar chart. See bar chart samples.
chart.calendar
Creates a calendar chart to quickly see weekly or seasonal changes in data. See calendar chart samples.
chart.line
Creates a line chart. See line chart samples.
chart.line
Creates a ridgeline chart. See ridgeline chart samples.
chart.ranking
A chart which shows how the rank of something varies. See ranking chart samples.
chart.scatter
Similar to line charts but with lines turned off. See scatter chart samples.
chart.waffle
A heat map style grid. See waffle chart samples.
hierarchy.treemap
Creates a hierarchical treemap. See treemap samples.
map.zoomable
Creates a Leaflet-based, zoomable, slippy map. See zoomable map samples.
map.svg
Creates a simple SVG-based map using a Web Mercator projection. See SVG map samples.
map.hex_cartogram
Creates a hexagonal cartogram using HexJSON layouts. See hex cartogram samples.
table
Create heat-map tables and easily merge across rows. See table samples.
Testing
Run a test with the following command. Replace the file path with the tests you want to run. If you provide a directory path and Deno will find any test files in the directory and it’s sub-directories.
deno test --unstable --allow-read --no-check components/chart/bar.test.ts
To make Deno continually run these tests, add the --watch
flag. This will then run each time the input files change.
deno test --unstable --allow-read --no-check --watch components/chart/bar.test.ts