Fonts

A comprehensive hub for typography in dartwork-mpl. All bundled fonts are automatically registered with matplotlib on import—no manual configuration required.

Overview

dartwork-mpl includes 130 professional fonts from 9 font families, all optimized for data visualization and publication-quality figures. When you import the library, these fonts become immediately available to matplotlib.

Default Font: Roboto. Nine curated font families are bundled and auto-registered. Roboto is the default for all presets. Click through for the full catalog with all weights and variants.

Roboto

Google's flagship sans-serif, default font in dartwork-mpl

Thin The dartwork designs beautiful data artworks since 2021. Light The dartwork designs beautiful data artworks since 2021. Regular The dartwork designs beautiful data artworks since 2021. Medium The dartwork designs beautiful data artworks since 2021. Bold The dartwork designs beautiful data artworks since 2021. Black The dartwork designs beautiful data artworks since 2021.

Explore all font families →

Font Utilities. Helper functions fs() and fw() for relative font sizing and weighting, plus an interactive playground to test them out. Learn about font utilities →

Quick Start

import dartwork_mpl as dm
import matplotlib.pyplot as plt

dm.style.use("scientific")  # Apply dartwork style (includes Roboto font)

fig, ax = plt.subplots()
ax.set_title("Publication-Ready Title", fontsize=dm.fs(4), fontweight=dm.fw(2))
ax.set_xlabel("X Axis Label", fontsize=dm.fs(0))
ax.set_ylabel("Y Axis Label", fontsize=dm.fs(0))

# Preview all available fonts
dm.plot_fonts(ncols=2, font_size=12)
plt.show()

Key Features

Auto-Registration

All 130 fonts are registered with matplotlib’s font manager on import. No manual font installation or configuration needed.

Relative Sizing

fs(n) adjusts font sizes relative to your base style. fw(n) adjusts weights in standardized steps. Both keep typography consistent across different output formats.

Math Support

Noto Sans Math provides comprehensive mathematical symbol coverage for scientific notation and equations.

Multi-Language

Paperlogy for Korean (한글), Noto Sans CJK for Japanese/Chinese — all bundled and auto-registered. No system font installation needed.

Bundled Fonts Summary

Family

Variants

Primary Use Case

Roboto

15

Default body text, general purpose

Inter

20

UI text, presentations

InterDisplay

20

Headings, titles

Noto Sans

15

Multi-language documents

Noto Sans Condensed

20

Tables, dense layouts

Noto Sans SemiCondensed

20

Labels, legends

Noto Sans ExtraCondensed

20

Axis labels, tight spaces

Noto Sans Math

1

Mathematical expressions

Paperlogy

9

Korean (한글) text

Bundled Icon Fonts

In addition to text fonts, dartwork-mpl bundles icon fonts for use in data visualizations. Icons are rendered as text using Unicode codepoints.

Identifier

Font

Icons

Style

mdi

Material Design Icons (Templarian)

7,448+

Filled + Outline

fa-solid

Font Awesome 6 Free Solid

2,000+

Filled

fa-regular

Font Awesome 6 Free Regular

160+

Outline

fa-brands

Font Awesome 6 Brands

460+

Brand logos

import dartwork_mpl as dm

mdi = dm.icon_font('mdi')          # Material Design Icons
fa  = dm.icon_font('fa-solid')     # Font Awesome 6 Solid

ax.text(0.5, 0.5, "\U000F050F",    # MDI: thermometer
        fontproperties=mdi, fontsize=20)

See API Reference → Icon Font System for full details.