Mkdocs Plotly Plugin
MkDocs plugin to create interactive charts from data using the declarative plotly's json syntax.
Includes supports for mkdocs-material theme features like instant loading and dark color themes.
Installation
Install the plugin using pip3
:
And then add the plugin into plugins
and the custome fence
plugins:
- plotly
markdown_extensions:
- pymdownx.superfences:
custom_fences:
- name: plotly
class: plotly
format: !!python/name:mkdocs_plotly_plugin.fences.fence_plotly
Usage
You can insert any valid plotly JSON as a codeblock using:
``` plotly
{
"data": [
{
"x": [
"giraffes",
"orangutans",
"monkeys"
],
"y": [
20,
14,
23
],
"type": "bar"
}
]
}
```
This is compatiable with snipplets
as well
or you can insert any plotly JSON through URLs
Snipplets vs. file path
Using snipplets
will insert the json content into the output HTML file, which is more suitable for smaller datasets. Using file_path
will fetch the json content once the page is loaded.
Plotly JSON
Plotly has its own eco-system for creating charts in most statistical languages. You can output the plot as a json file through fig.to_json()
.
Options
Option | Default | Description |
---|---|---|
lib_path |
|
Relative path to local plotly.js file, or leave it blank to use CDN. |
template_default | plotly_min |
template for plotly charts in light mode |
template_slate | plotly_dark_min |
template for plotly charts in dark mode |
enable_template | True | use template to automatically change theme |
Note
Available Plotly templates are ["plotly", "plotly_white", "plotly_dark", "ggplot2", "seaborn", "simple_white", "none"]
. If you want to customize your own template, you can export it as a JSON file and provide its path in options relative to doc_dir
.