@carbon/charts-svelte
Carbon Charting Svelte Wrappers
Maintenance & support
These Svelte wrappers have been developed by Eric Liu.
Please direct all questions regarding support, bug fixes, and feature requests to @metonym.
Getting started
Run the following command using npm:
npm install -S @carbon/charts @carbon/charts-svelte d3@5.x
If you prefer Yarn, use the following command instead:
yarn add @carbon/charts @carbon/charts-svelte d3@5.x
Note: you'd also need to install carbon-components
if you're not using a bundled version of the library.
Step-by-step instructions
Quickly scaffold a project from the official Svelte webpack template using degit:
npx degit sveltejs/template-webpack svelte-app
cd svelte-app
Install the dependencies:
yarn add carbon-components @carbon/charts @carbon/charts-svelte d3
Let's add a simple bar chart from @carbon/charts-svelte
.
First, import the BarChartSimple
component in src/App.svelte
.
<!-- src/App.svelte -->
<script>
import { BarChartSimple } from "@carbon/charts-svelte";
</script>
Next, add an external stylesheet using the svelte:head API.
<!-- src/App.svelte -->
<svelte:head>
<link rel="stylesheet" href="https://unpkg.com/@carbon/charts/styles.min.css" />
</svelte:head>
Then, instantiate the BarChartSimple
component with some sample data.
<!-- src/App.svelte -->
<BarChartSimple
data={[
{
"group": "Qty",
"value": 65000
},
{
"group": "More",
"value": 29123
},
{
"group": "Sold",
"value": 35213
},
{
"group": "Restocking",
"value": 51213
},
{
"group": "Misc",
"value": 16932
}
]}
options={{
"title": "Simple bar (discrete)",
"axes": {
"left": {
"mapsTo": "value"
},
"bottom": {
"mapsTo": "group",
"scaleType": "labels"
}
},
"height": "400px"
}}
/>
Run the app in development mode.
yarn dev
Navigate to http://localhost:8080. You should see the bar chart rendered in the browser.
Codesandbox examples
Sample use cases can be seen here.
When opening the link above, click on the Edit on Codesandbox button for each demo to see an isolated project showing you how to reproduce the demo.
Charting data & options
Although we will definitely introduce new models in the future as we start shipping new components such as maps, Data and options follow the same model in all charts, with minor exceptions and differences in specific components.
For instance in the case of a donut chart you're able to pass in an additional field called center
in your options configuring the donut center.
For instructions on using the tabular data format, see here
There are also additional options available depending on the chart type being used, see our demo examples here.
Customizable options (specific to chart type) can be found here