Skip to content

MSUthemes

MSUthemes

MSU and Big Ten color palettes and themes for Python data visualization

Python Version PyPI Version License: CC BY-SA 4.0

MSUthemes provides a comprehensive suite of color palettes, themes, and datasets for creating professional, MSU-branded visualizations using matplotlib, seaborn, and plotly.

This package is a Python port of the MSUthemes R package available on CRAN.

Features

🎨 MSU Brand Colors

Official Michigan State University colors including MSU Green, White, and carefully selected accent colors for data visualization.

🏈 Big Ten Colors

Complete color sets for all 18 Big Ten Conference institutions with flexible name recognition supporting common aliases.

📊 Color Palettes

11 carefully designed palettes (sequential, diverging, qualitative) optimized for effective data visualization.

✍️ Metropolis Font

Professional typography with bundled Metropolis font including 9 weights and italic variants.

🎭 matplotlib/seaborn Themes

Ready-to-use themes that automatically apply MSU branding to all your plots with a single function call.

📈 BigTen Dataset

Historical institutional data (1996-2023) from the College Scorecard for research and analysis.

Quick Start

Installation

Install MSUthemes from PyPI:

pip install msuthemes

For all optional dependencies (seaborn, plotly):

pip install msuthemes[all]

Basic Example

Create an MSU-branded plot in just a few lines:

import matplotlib.pyplot as plt
from msuthemes import theme_msu, colors
import numpy as np

# Apply MSU theme
theme_msu()

# Create a plot with MSU Green
x = np.linspace(0, 10, 100)
y = np.sin(x)

fig, ax = plt.subplots()
ax.plot(x, y, color=colors.MSU_GREEN, linewidth=2)
ax.set_title('MSU-Branded Plot')
ax.set_xlabel('X axis')
ax.set_ylabel('Y axis')
plt.show()

Color Palettes

Access MSU and Big Ten color palettes:

from msuthemes import palettes, get_bigten_colors

# Sequential palette for heatmaps
colors_seq = palettes.msu_seq.as_hex(n_colors=5)

# Diverging palette for comparative data
colors_div = palettes.msu_div.as_hex(n_colors=7)

# Qualitative palette for categorical data
colors_qual = palettes.msu_qual1.as_hex()

# Big Ten institution colors
msu_color = get_bigten_colors("MSU")
rival_colors = get_bigten_colors(["MSU", "Michigan", "Ohio State"])

BigTen Dataset

Access and analyze Big Ten institutional data:

from msuthemes import load_bigten_data, get_bigten_summary

# Load all data (504 rows × 38 columns)
df = load_bigten_data()

# Filter for specific institutions and years
recent_data = load_bigten_data(
    institutions=['MSU', 'Michigan', 'Ohio State'],
    years=[2020, 2021, 2022, 2023]
)

# Get summary statistics
summary = get_bigten_summary()
print(summary)

MSU Color Reference

Primary Colors

MSU Green
#18453B
MSU White
#FFFFFF

Secondary Colors

MSU Black
#000000
MSU Silver
#C1C6C8
MSU Gray
#909090

Accent Colors

MSU Orange
#D14D28
MSU Teal
#005F83
MSU Grellow
#849E2A

Documentation

📖 Getting Started

Installation - Install MSUthemes and dependencies

Quick Start - Get up and running quickly

Migration from R - Guide for R users

📚 User Guide

Colors - MSU and Big Ten colors

Palettes - Sequential, diverging, and qualitative palettes

Themes - Apply MSU branding to plots

Big Ten - Work with Big Ten institutions

Datasets - BigTen dataset documentation

🎨 Gallery

View Examples - See MSUthemes in action

🔧 API Reference

Complete API Documentation - Detailed reference for all modules

Development Status

MSUthemes is currently in alpha development (v0.1.0). The API is stable but may evolve based on user feedback.

Roadmap Highlights

  • ✅ Core color system and palettes
  • ✅ Metropolis font integration
  • ✅ matplotlib and seaborn themes
  • ✅ Big Ten institution support (all 18 schools)
  • ✅ BigTen dataset integration
  • ✅ Comprehensive test suite (170+ tests, >90% coverage)
  • ✅ PyPI publication
  • 🔄 plotly theme support (coming soon)

Contributing

Contributions are welcome! Please see our Contributing Guide for details.

License

MSUthemes is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License (CC BY-SA 4.0).

Citation

If you use MSUthemes in your research or publications, please cite:

@software{msuthemes_python,
  author = {Esposito, Emilio Xavier},
  title = {MSUthemes: MSU and Big Ten Color Palettes and Themes for Python},
  year = {2025},
  url = {https://github.com/emilioxavier/msuthemes-py}
}

Contact

Acknowledgments

  • Michigan State University for brand guidelines and color specifications
  • The Big Ten Conference for institutional color information
  • The original MSUthemes R package and its contributors