All Projects → LaurentRDC → Pandoc Plot

LaurentRDC / Pandoc Plot

Licence: gpl-2.0
Render and include figures in Pandoc documents using your plotting toolkit of choice

Programming Languages

haskell
3896 projects
matlab
3953 projects

Projects that are alternatives of or similar to Pandoc Plot

Chartpy
Easy to use Python API wrapper to plot charts with matplotlib, plotly, bokeh and more
Stars: ✭ 426 (+468%)
Mutual labels:  matplotlib, plotting, plotly
Pyplot.jl
Plotting for Julia based on matplotlib.pyplot
Stars: ✭ 347 (+362.67%)
Mutual labels:  matplotlib, plotting
Joypy
Joyplots in Python with matplotlib & pandas 📈
Stars: ✭ 322 (+329.33%)
Mutual labels:  matplotlib, plotting
Ggthemr
Themes for ggplot2.
Stars: ✭ 697 (+829.33%)
Mutual labels:  ggplot2, plotting
Ggthemes
Additional themes, scales, and geoms for ggplot2
Stars: ✭ 1,107 (+1376%)
Mutual labels:  ggplot2, plotting
Lantern
Data exploration glue
Stars: ✭ 292 (+289.33%)
Mutual labels:  matplotlib, plotly
Colorcet
A set of useful perceptually uniform colormaps for plotting scientific data
Stars: ✭ 438 (+484%)
Mutual labels:  matplotlib, plotly
Matplotlib Venn
Area-weighted venn-diagrams for Python/matplotlib
Stars: ✭ 260 (+246.67%)
Mutual labels:  matplotlib, plotting
Mplcyberpunk
"Cyberpunk style" for matplotlib plots
Stars: ✭ 762 (+916%)
Mutual labels:  matplotlib, plotting
Ggdistribute
ggplot2 extension for plotting distributions
Stars: ✭ 16 (-78.67%)
Mutual labels:  ggplot2, plotting
Mlcourse.ai
Open Machine Learning Course
Stars: ✭ 7,963 (+10517.33%)
Mutual labels:  matplotlib, plotly
Bayesplot
bayesplot R package for plotting Bayesian models
Stars: ✭ 276 (+268%)
Mutual labels:  pandoc, ggplot2
Heatmaply
Interactive Heat Maps for R Using plotly
Stars: ✭ 275 (+266.67%)
Mutual labels:  ggplot2, plotly
Markdown Preview Enhanced
One of the 'BEST' markdown preview extensions for Atom editor!
Stars: ✭ 3,478 (+4537.33%)
Mutual labels:  pandoc, plantuml
Brokenaxes
Create matplotlib plots with broken axes
Stars: ✭ 266 (+254.67%)
Mutual labels:  matplotlib, plotting
Pandoc Plantuml Filter
Pandoc filter for PlantUML code blocks
Stars: ✭ 51 (-32%)
Mutual labels:  pandoc, plantuml
nodeplotlib
NodeJS plotting library for JavaScript and TypeScript. On top of plotly.js. Inspired by matplotlib.
Stars: ✭ 115 (+53.33%)
Mutual labels:  plotly, matplotlib
microfilm
Creating figures and animations for multi-channel images with a focus on microscopy.
Stars: ✭ 22 (-70.67%)
Mutual labels:  matplotlib, plotting
Adjusttext
A small library for automatically adjustment of text position in matplotlib plots to minimize overlaps.
Stars: ✭ 731 (+874.67%)
Mutual labels:  matplotlib, plotting
Bubbly
A python package for plotting animated and interactive bubble charts using Plotly
Stars: ✭ 37 (-50.67%)
Mutual labels:  plotting, plotly

pandoc-plot

A Pandoc filter to generate figures from code blocks in documents

Hackage version Conda Version license

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.

Overview

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.

```{.matplotlib}
import matplotlib.pyplot as plt

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

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

pandoc --filter pandoc-plot input.md --output output.html

Note that pandoc-plot only works with pandoc >= 2.11 because of some breaking changes in pandoc’s API.

Supported toolkits

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

  • matplotlib: plots using the matplotlib Python library;
  • plotly_python : plots using the plotly Python library;
  • plotly_r: plots using the plotly R library
  • matlabplot: plots using MATLAB;
  • mathplot : plots using Mathematica;
  • octaveplot: plots using GNU Octave;
  • ggplot2: plots using ggplot2;
  • gnuplot: plots using gnuplot;
  • graphviz: graphs using Graphviz;
  • bokeh: plots using the Bokeh visualization library;
  • plotsjl: plots using the Julia Plots.jl package;
  • plantuml: diagrams using the PlantUML software suite.

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!

Documentation

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

Installation

Binaries and Installers

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

conda

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

winget

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

winget install pandoc-plot

Arch Linux

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

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

cabal update
cabal install pandoc-plot

or

stack update
stack install pandoc-plot

From source

Building from source can be done using stack or cabal:

git clone https://github.com/LaurentRDC/pandoc-plot
cd pandoc-plot
stack install # Alternatively, `cabal install`
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].