Skip to main content

A matplotlib backend using pygame.

Project description

Pygame Matplotlib Backend

Create plots in pygame.

Note that the library is in an experimental developement stage and not all features of standard matplotlib backends are implement at the moment.

Installation

pip install pygame-matplotlib

Usage

First you will need to specify that you want to use pygame backend.

# Select pygame backend
import matplotlib
matplotlib.use('pygame')

Then you can use matplotlib as you usually do.

# Standard matplotlib syntax
import matplotlib.pyplot as plt
fig, ax = plt.subplots()  # Create a figure containing a single axes.
ax.plot([1, 2, 3, 4], [1, 4, 2, 3])  # Plot some data on the axes.
plt.show()

Or you can include the plot in your game using the fact that a Figure is also a pygame.Surface with this backend.

import pygame
import pygame.display

fig, axes = plt.subplots(1, 1,)
axes.plot([1,2], [1,2], color='green', label='test')

fig.canvas.draw()

screen = pygame.display.set_mode((800, 600))

# Use the fig as a pygame.Surface
screen.blit(fig, (100, 100))

show = True
while show:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            # Stop showing when quit
            show = False
    pygame.display.update()

Note that if you want to update the plot during the game, you might need to call fig.canvas.draw() and screen.blit(fig) during the game loop.

See examples in test.py or test_show.py

How it works in the back

The matplotlib Figure object is replaced by a FigureSurface object which inherits from both matplotlib.figure.Figure and pygame.Surface.

Current implementation

Support mainly the basic plotting capabilities.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pygame_matplotlib-0.5.tar.gz (118.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pygame_matplotlib-0.5-py3-none-any.whl (10.7 kB view details)

Uploaded Python 3

File details

Details for the file pygame_matplotlib-0.5.tar.gz.

File metadata

  • Download URL: pygame_matplotlib-0.5.tar.gz
  • Upload date:
  • Size: 118.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.23

File hashes

Hashes for pygame_matplotlib-0.5.tar.gz
Algorithm Hash digest
SHA256 98d78e05dc1c8e508f3e9c37665aaf94856dd0cad4610fb69575cd53ee2b3292
MD5 e874f5e5a10611a0f14c34fdfbda3ab3
BLAKE2b-256 465cfc7aaf8ea6683318427b9854f151d794168f1cef860c382d4ef8c9e39b00

See more details on using hashes here.

File details

Details for the file pygame_matplotlib-0.5-py3-none-any.whl.

File metadata

File hashes

Hashes for pygame_matplotlib-0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 6e04ab3950e8ecd3b43aa6c1ac9a56a9c6a573d5dfcf226ab03622497763e76c
MD5 a1e949ec99b084c56b92639ada5826d2
BLAKE2b-256 d7608d4608440ec841247a9612d94d24052fe5189c865580fd35ea53060c0424

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page