Search...Search plugins and themes...
⌘K
Sign in
  • Get started
  • Download
  • Pricing
  • Enterprise
  • Account
  • Obsidian
  • Overview
  • Sync
  • Publish
  • Canvas
  • Mobile
  • Web Clipper
  • CLI
  • Learn
  • Help
  • Developers
  • Changelog
  • About
  • Roadmap
  • Blog
  • Resources
  • System status
  • License overview
  • Terms of service
  • Privacy policy
  • Security
  • Community
  • Plugins
  • Themes
  • Discord
  • Forum / 中文论坛
  • Merch store
  • Brand guidelines
Follow us
DiscordTwitterBlueskyThreadsMastodonYouTubeGitHub
© 2026 Obsidian

Plotly

dmytro-shulhadmytro-shulha11k downloads

Embed Plotly charts in your notes.

Add to Obsidian
  • Overview
  • Scorecard
  • Updates7

Obsidian plugin, which allow user to embed Plotly charts into markdown notes.

Usage

Basic (using plotly block)

Use Command Palette (Ctrl-P) to add basic plotly template: Command example

This approach allows you to create JSON or YAML inside plotly block with payload for data, layout and config objects. It does NOT support JavaScript examples from plotly.com site - it only support static payload forvarding to Plotly.newPlot function. For JavaScript support use Advanced approach with DataViewJS.

Basic example (those YAML and JSON result in identical plots):

    ```plotly
    data:
        - x: [0,1,2]
          y: [0,1,0]
    ```
    ```plotly
    {
        "data": [{
            "x":[0, 1, 2],
            "y":[0, 1, 0]
        }]
    }
    ```

Advanced (using dataviewjs block)

Use Command Palette (Ctrl-P) to add plotly template: Command example

This approach DOES support any example from plotly.com. (I haven't checked them all, feel free to create issue if some aren't working). However, this approach require DataView plugin to process JavaScript. As a benefit, you can create plots based on data from you notes which you retrieve via DataView API! (By the way, this sounds similar to what obsidian-tracker plugin does).

To use it, just add DataviewJS block with Plotly command, copy desired example and paste it. NOTE: All examples use Plotly.newPlot(component, data, layout, config) to draw, and it takes some extra code to work in Obsidian. There is a wrapper function available as window.renderPlotly(this.component, data, layout, config), which will draw plot inside DataViewJS block. (Wrapper parameters should be same as in example).

A lot of examples are on Plotly official site.

How to copy examples from plotly.com

NOTE: Some examples also require d3 library. This is large library and rarely needed. That's why I do not want to have it in plugin. If you need this library, there is a workaround: you can download d3 library from official site (Open link->Right click->Save as...), place it in your vault and import using require;

    ```dataviewjs
        //Some plotly examples require d3 library to work.
        //Since it's large and used by few examples,
        //I propose a workaround to import d3;
        //You need to download dependency from https://d3js.org/d3.v7.min.js
        //and place it in your vault.
        let path = app.vault.adapter.basePath;//absolute path to your vault
        var d3 = require(path+"\\utils\\d3.v7.min.js");

        //Replace this block with any example from plotly.com
        //NOTE: `Plotly.newPlot` won't work here, use `window.renderPlotly` instead
        var data = [
            {x:[0,1,2,3,4,5,6,7,8,9],y:[4,4,2,2,3,3,2,2,4,4]},
            {x:[0,1,2,3,4,5,6,7,8,9],y:[3,3,1,1,2,2,1,1,3,3]}
        ];
        var layout = {title:"Example in DataViewJS"};
        var config = {displaylogo:false};

        window.renderPlotly(this.container, data, layout, config)
    ```

Examples

Some more obsidian examples of this plugin here

More examples on Plotly official site.

HealthFair
ReviewSatisfactory
About
Embed Plotly charts in Markdown using plotly code blocks with JSON or YAML payloads for data, layout, and config. Render full Plotly JavaScript examples and create dynamic plots from note data via DataviewJS (requires Dataview), using a provided wrapper to draw plots inside blocks.
ChartsVisualizationMarkdown
Details
Current version
0.0.6
Last updated
5 years ago
Created
5 years ago
Updates
7 releases
Downloads
11k
Compatible with
Obsidian 0.9.12+
Platforms
Desktop, Mobile
License
MIT
Report bugRequest featureReport plugin
Author
dmytro-shulhadmytro-shulha
github.com/Dmitriy-Shulha
GitHubdmytro-shulha
  1. Community
  2. Plugins
  3. Charts
  4. Plotly

Related plugins

Charts

Easily create interactive charts in your notes.

Excalidraw

Visual PKM powerhouse. Create and edit Excalidraw drawings.

Advanced Canvas

Supercharge your canvas experience. Create presentations, flowcharts and more.

ExcaliBrain

An interactive, structured mind-map of your Obsidian vault.

Text Format

Format selected text upper/lower/capitalize.

Linter

Format and style your notes. Linter can be used to format YAML tags, aliases, arrays, and metadata; footnotes; headings; spacing; math blocks; regular Markdown contents like list, italics, and bold styles; and more with the use of custom rule options.

Breadcrumbs

Visualise the hierarchy of your vault using a breadcrumb trail or matrix view.

Mermaid Tools

Improved Mermaid.js experience: visual toolbar with common elements and more.

Custom Frames

Turn web apps into panes using iframes with custom styling. Also comes with presets for Google Keep, Todoist and more.

Maps

Adds a map layout to bases so you can display notes as an interactive map view.