SciDraw

    Mark A. Caprio, University of Notre Dame
 
SciDraw examples
Click here for PDF.



SciDraw is a system for preparing publication-quality scientific figures with Mathematica.   SciDraw provides both a framework for structuring figures and tools for generating their content.  SciDraw helps with generating figures involving mathematical plots, data plots, and diagrams.  The package allows extensive manual fine tuning of the styling of text and graphics.

The structural framework includes:
  • generation of panels for multi-panel and inset figures, with fine control over all properties,
  • customizable tick marks,
  • style definitions for uniformly controlling formatting and appearance across multiple figures,
  • tools for annotating figures with text labels, axes, etc.
Any graphics (plots, images, etc.) which you can produce in or import into Mathematica can easily be included in a SciDraw figure.

Beyond these structural elements, SciDraw then also provides an object oriented drawing system which makes many hard-to-draw scientific diagrams comparatively easy to generate — e.g., by helping you to automatically attach text labels to objects in the figure (such as geometric shapes, arrows, and mathematical curves), and by helping you to position these objects with respect to each other.

SciDraw also provides data plotting and legend generation capabilities complementary to those built into Mathematica

SciDraw is the successor to LevelScheme [see also Comput. Phys. Commun. 171, 107 (2005)].  The LevelScheme package was designed to allow the easy and efficient preparation of high-quality level schemes, or level energy diagrams, as used in nuclear, atomic, molecular, and hadronic physics.  These capabilities have been retained.  Like LevelScheme, SciDraw automates many of the tedious aspects of preparing a level scheme, such as positioning transition arrows between levels or placing text labels alongside the objects they label. It also includes specialized features for creating several common types of level schemes encountered in nuclear physics.
Downloading SciDraw

The latest release is SciDraw 0.0.8 (December 31, 2022). You may download it here: DOWNLOAD [ZIP]

SciDraw 0.0.8 fixes various incompatibilities with recent versions of Mathematica. It has been tested under Mathematica versions 12.1 and 13.1.

Note for users of previous versions of SciDraw: If you have used previous versions of SciDraw, you will need to replace all occurrences of Canvas[] in your existing code with Absolute[], e.g., Radius->Canvas[4] becomes Radius->Absolute[4]. This change is required to accommodate a major incompatibility arising from the introduction, in Mathematica 12.2, of a new built-in symbol System`Canvas.
Known issues with latest Mathematica releases

SciDraw 0.0.8 fixes all known compatibility issues.

OTHER INFORMATION

User guides (also included in the full download above): SciDrawGuide.pdf and CustomTicksGuide.pdf

Further technical documentation for several of the subpackages is available through the Mathematica Information Center's MathSource code library: search for packages by this author at MathSource

Current development versions of the code may be found at GitHub, for SciDraw and CustomTicks.

Earlier releases of SciDraw may be found here.

Legacy page for LevelScheme.


Last modified: December 31, 2022
Mark A. Caprio, University of Notre Dame