pandoc-plot: A Pandoc filter to include figures generated from code blocks using your plotting toolkit of choice.

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain] [Publish]


A Pandoc filter to include figures generated from code blocks. Keep the document and code in the same location. Output is captured and included as a figure.

[Skip to Readme]


Versions,,,,,,,,,,,,,,,,,,,,,,,,, 1.1.0, 1.1.1, 1.2.0, 1.2.1, 1.2.2, 1.2.3, 1.3.0, 1.4.0, 1.4.1, 1.5.0, 1.5.1, 1.5.1, 1.5.2, 1.5.3, 1.5.4, 1.5.5, 1.6.0, 1.6.1, 1.6.2, 1.7.0, 1.8.0
Change log
Dependencies aeson (>=2 && <3), base (>=4.11 && <5), bytestring, containers, data-default, directory (>=1.2.7 && <2), filepath (>=1.4 && <2), gitrev (>=1 && <2), hashable (>=1 && <2), lifted-async (>=0.10 && <1), lifted-base (>=0.2 && <1), mtl (>=2.2 && <3), optparse-applicative (>=0.14 && <1), pandoc (>=2.10 && <3), pandoc-plot, pandoc-types (>=1.22 && <1.23), shakespeare (>=2.0 && <3), tagsoup (>=0.14 && <1), template-haskell (>2.7 && <3), text (>=1 && <3), typed-process (>=0.2.1 && <1), unix (>=2.4 && <2.8), yaml (>=0.8 && <1) [details]
License GPL-2.0-or-later
Copyright (c) 2019-present Laurent P. René de Cotret
Author Laurent P. René de Cotret
Maintainer Laurent P. René de Cotret
Category Text
Home page
Bug tracker
Source repo head: git clone
Uploaded by LaurentRDC at 2022-03-31T15:22:04Z


[Index] [Quick Jump]


Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Readme for pandoc-plot-1.5.1

[back to package description]


A Pandoc filter to generate figures from code blocks in documents


pandoc-plot turns code blocks present in your documents (Markdown, LaTeX, etc.) into embedded figures, using your plotting toolkit of choice, including Matplotlib, ggplot2, MATLAB, Mathematica, and more.


This program is a Pandoc filter. It can therefore be used in the middle of conversion from input format to output format, replacing code blocks with figures.

The filter recognizes code blocks with classes that match plotting toolkits. For example, using the matplotlib toolkit:

# My document

This is a paragraph.

import matplotlib.pyplot as plt

plt.plot([0,1,2,3,4], [1,2,3,4,5])
plt.title('This is an example figure')

Putting the above in, we can then generate the plot and embed it in an HTML page:

pandoc --filter pandoc-plot --output output.html

The resulting output.html looks like this:

<h1 id="my-document">My document</h1>

<p>This is a paragraph.</p>

<img src="plots\9671478262050082276.png" />

Supported toolkits

pandoc-plot currently supports the following plotting toolkits (installed separately):

To know which toolkits are useable on your machine (and which ones are not available), you can check with the toolkits command:

pandoc-plot toolkits

Wish your plotting toolkit of choice was available? Please raise an issue!


You can find more information in the documentation, available either in the source repository file, on the webpage, or via the command pandoc-plot --manual.


Binaries and Installers

Latest release

Windows, Linux, and Mac OS binaries are available on the GitHub release page. There are also Windows installers.


Conda Version

Like pandoc, pandoc-plot is available as a package installable with conda. Click here to see the package page.

To install in the current environment:

conda install -c conda-forge pandoc-plot


homebrew version

pandoc-plot is available as a package via Homebrew. Click here to see the package page.

To install:

brew install pandoc-plot


You can install pandoc-plot from the Windows Package Manager winget (just like pandoc). To install:

winget install pandoc-plot

Arch Linux

AUR version

You can install pandoc-plot from the archlinux user repository as pandoc-plot-bin. You can install using e.g. yay:

yay -S pandoc-plot-bin

From Hackage/Stackage

Hackage version

pandoc-plot is available on Hackage and Stackage. Using the cabal-install tool:

cabal update
cabal install

From source

Building from source can be done using cabal:

git clone
cd pandoc-plot
cabal install # Alternatively, `stack install`