MDplot: Visualise Molecular Dynamics

The MDplot package provides plotting functions to allow for automated visualisation of molecular dynamics simulation output. It is especially useful in cases where the plot generation is rather tedious due to complex file formats or when a large number of plots are generated. The graphs that are supported range from those which are standard, such as RMSD/RMSF (root-mean-square deviation and root-mean-square fluctuation, respectively) to less standard, such as thermodynamic integration analysis and hydrogen bond monitoring over time. All told, they address many com monly used analyses. In this article, we set out the MDplot package’s functions, give examples of the function calls, and show the associated plots. Plotting and data parsing is separated in all cases, i.e. the respective functions can be used independently. Thus, data manipulation and the integration of additional file formats is fairly easy. Currently, the loading functions support GROMOS, GROMACS, and AMBER file formats. Moreover, we also provide a Bash interface that allows simple embedding of MDplot into Bash scripts as the final analysis step. Availability: The package can be obtained in the latest major version from CRAN (https://cran.r or in the most recent version from the project’s GitHub page at, where feedback is also most welcome. MDplot is published under the GPL-3 license.

Christian Margreitter , Chris Oostenbrink

CRAN packages used

MDplot, bio3d, Rknots

CRAN Task Views implied by cited packages


Text and figures are licensed under Creative Commons Attribution CC BY 4.0. The figures that have been reused from other sources don't fall under this license and can be recognized by a note in their caption: "Figure from ...".


For attribution, please cite this work as

Margreitter & Oostenbrink, "The R Journal: MDplot: Visualise Molecular Dynamics", The R Journal, 2017

BibTeX citation

  author = {Margreitter, Christian and Oostenbrink, Chris},
  title = {The R Journal: MDplot: Visualise Molecular Dynamics},
  journal = {The R Journal},
  year = {2017},
  note = {},
  doi = {10.32614/RJ-2017-007},
  volume = {9},
  issue = {1},
  issn = {2073-4859},
  pages = {164-186}