Vega Themes
Themes for stylized Vega and Vega-Lite visualizations. For Vega version 3+ and Vega-Lite 2+.
A Vega theme is a configuration object
with default settings for a variety of visual properties such as colors, typefaces,
line widths and spacing. This module exports a set of named themes, which can be
passed as input to the Vega or Vega-Lite with Vega-Embed
or directly as a configuration object to the Vega parser.
Try Vega-Themes in our Observable Demo.
Vega Themes comes with Vega-Embed:
vegaEmbed(el, spec, {theme: 'quartz'});
If you want to use a different version, pass the theme as a configuration:
vegaEmbed(el, spec, {config: vegaThemes.quartz});
Once instantiated, a visualization theme can not be changed. Instead, the
input specification must be re-parsed with a new theme.
Included Themes
#
vega.themes.excel
<>
Chart theme modeled after Microsoft Excel. Try it here.
#
vega.themes.ggplot2
<>
Chart theme modeled after ggplot2. Try it here.
#
vega.themes.quartz
<>
Chart theme modeled after Quartz. Try it here.
#
vega.themes.vox
<>
Chart theme modeled after Vox. Try it here.
#
vega.themes.fivethirtyeight
<>
Chart theme modeled after FiveThirtyEight. Try it here.
#
vega.themes.dark
<>
A dark theme. Try it here.
#
vega.themes.latimes
<>
Chart theme modeled after the Los Angeles Times. Try it here.
#
vega.themes.urbaninstitute
<>
Chart theme modeled after the Urban Institute. Try it here.
#
vega.themes.googlecharts
<>
Chart theme modeled after Google Charts. Try it here.
#
vega.themes.powerbi
<>
Chart theme modeled after Power BI Desktop default theme. Try it here.
Instructions for Developers
To view and test different themes, follow these steps:
- Install dependencies via
yarn
. - Launch a local web server in the top-level directory with
yarn start
. - Make changes. The website will automatically reload.
Publishing
Publishing is handled by a 2-branch pre-release process, configured in publish.yml
. All changes should be based off the default next
branch, and are published automatically.
- PRs made into the default branch that would trigger a version bump are auto-deployed to the
next
pre-release tag on NPM. The result can be installed with npm install vega-themes/@next
.
- When merging into
next
, please use the squash and merge
strategy.
- To release a new stable version, open a PR from
next
into stable
using this compare link.
- When merging from
next
into stable
, please use the create a merge commit
strategy.