rsmf package

Submodules

rsmf.abstract_formatter module

Abstract base class for all formatters.

class rsmf.abstract_formatter.AbstractFormatter

Bases: abc.ABC

Base class for formatter implementations.

columnwidth
figure(aspect_ratio=0.6172839506172839, width_ratio=1.0, wide=False)

Sets up the plot with the fitting arguments so that the font sizes of the plot and the font sizes of the document are well aligned.

Parameters:
  • aspect_ratio (float, optional) – the aspect ratio (width/height) of your plot. Defaults to the golden ratio.
  • width_ratio (float, optional) – the width of your plot in multiples of columnwidth. Defaults to 1.0.
  • wide (bool, optional) – indicates if the figures spans two columns in twocolumn mode, i.e. if the figure* environment is used, has no effect in onecolumn mode . Defaults to False.
Returns:

The matplotlib Figure object

Return type:

matplotlib.Figure

fontsizes
set_default_fontsizes()

Adjust the fontsizes in rcParams to the default values matching the surrounding document.

set_rcParams()

Adjust the rcParams to the default values.

wide_columnwidth
wide_width
width()

rsmf.custom_formatter module

Custom formatter that can be used if the intended document class is not supported.

class rsmf.custom_formatter.CustomFormatter(columnwidth=None, wide_columnwidth=None, fontsizes=10, pgf_preamble='')

Bases: rsmf.abstract_formatter.AbstractFormatter

Allows to use rsmf even if the intended document class is not supported.

Parameters:
  • columnwidth (float, optional) – Width of a single column (figure) plot in inches. Defaults to None.
  • wide_columnwidth (float, optional) – Width of a two column (figure*) plot in inches. Defaults to width.
  • fontsizes (Union[int,Fontsizes], optional) – Latex base fontsize or Fontsizes object. Defaults to 10.
  • pgf_preamble (str, optional) – Additional packages to include in the PGF preamble, e.g. for exchanging fonts or defining commands. Defaults to “”.
columnwidth
fontsizes
set_rcParams()

Adjust the rcParams to the default values.

wide_columnwidth

rsmf.fontsizes module

Provides an encapsulation for the different named fontsizes in LaTeX.

class rsmf.fontsizes.Fontsizes(tiny=5, scriptsize=7, footnotesize=8, small=9, normalsize=10, large=12, Large=14, LARGE=17, huge=20, Huge=25)

Bases: object

Encapsulates the standard named fontsizes used in LaTeX.

Defaults to the default LaTeX fontsizes based on normal size 10.

Parameters:
  • tiny (int, optional) – Tiny text. Defaults to 5.
  • scriptsize (int, optional) – Scriptsize text. Defaults to 7.
  • footnotesize (int, optional) – Footnotesize text. Defaults to 8.
  • small (int, optional) – Small text. Defaults to 9.
  • normalsize (int, optional) – Normal text. Defaults to 10.
  • large (int, optional) – Larger text. Defaults to 12.
  • Large (int, optional) – Even larger text. Defaults to 14.
  • LARGE (int, optional) – Even more large text. Defaults to 17.
  • huge (int, optional) – Huge text. Defaults to 20.
  • Huge (int, optional) – Even more huge text. Defaults to 25.
rsmf.fontsizes.default_fontsizes_10 = <rsmf.fontsizes.Fontsizes object>

Default fontsize palette based on normal size 11.

rsmf.fontsizes.default_fontsizes_11 = <rsmf.fontsizes.Fontsizes object>

Default fontsize palette based on normal size 12.

rsmf.fontsizes.default_fontsizes_12 = <rsmf.fontsizes.Fontsizes object>

Default fontsize palettes for a given normal size.

rsmf.quantumarticle module

Support for the quantumarticle documentclass of Quantum journal.

class rsmf.quantumarticle.QuantumarticleFormatter(columns='twocolumn', paper='a4paper', fontsize=10, **kwargs)

Bases: rsmf.revtexlike.RevtexLikeFormatter

Sets up the plot with the fitting arguments so that the font sizes of the plot and the font sizes of the document are well aligned.

Parameters:
  • columns (str, optional) – the columns you used to set up your quantumarticle, either “onecolumn” or “twocolumn”. Defaults to “twocolumn”.
  • paper (str, optional) – the paper size you used to set up your quantumarticle, either “a4paper” or “letterpaper”. Defaults to “a4paper”.
  • fontsize (int, optional) – the fontsize you used to set up your quantumarticle, either 10, 11 or 12. Defaults to 10.
set_rcParams()

Adjust the rcParams to the default values for Quantumarticle.

rsmf.revtex module

Support for the revtex4-1 and revtex4-2 documentclasses of the APS journals.

class rsmf.revtex.RevtexFormatter(columns='twocolumn', fontsize=10, **kwargs)

Bases: rsmf.revtexlike.RevtexLikeFormatter

Sets up the plot with the fitting arguments so that the font sizes of the plot and the font sizes of the document are well aligned.

Parameters:
  • columns (str, optional) – the columns you used to set up your quantumarticle, either “onecolumn” or “twocolumn”. Defaults to “twocolumn”.
  • fontsize (int, optional) – the fontsize you used to set up your quantumarticle, either 10, 11 or 12. Defaults to 10.
set_rcParams()

Adjust the rcParams to the default values for Revtex.

rsmf.revtexlike module

Base for implementations of document classes alike to revtex.

class rsmf.revtexlike.RevtexLikeFormatter(columns, paper, fontsize)

Bases: rsmf.abstract_formatter.AbstractFormatter

A generic Formatter for revtex-like journals.

Inherited classes should set the following:
self._columnwidths self._wide_columnwidths
columnwidth

columnwidth of the document.

fontsizes

Fontsizes as specified by the underlying document.

wide_columnwidth

Wide columnwidth of the document.

class rsmf.revtexlike.RevtexLikeParser(documentclass_identifiers, formatter_class)

Bases: object

Generic parser for revtex-like document classes.

Parameters:
  • documentclass_identifiers (List[string]) – Strings identifying the supported document class.
  • formatter_class (class) – Class object describing the formatter.

rsmf.setup module

Main routines to invoke the module from code.

rsmf.setup.setup(arg)

Get a formatter corresponding to the document’s class.

Parameters:arg (str) – Either path to a tex file or preamble of a tex file, containing at least the documentclass command.
Raises:Exception – When no formatter for the given document was found.
Returns:A formatter for the given document/preamble.
Return type:object

Module contents

Load all methods that are made accessible as the API.