Skip to main content

schulplots -- an educational tool to create plots of functions, styled as expected by undergraduate students in German schools.

Project description

Open In Colab

schulplots - a tool for generating 2D plots in "German school style"

schulplots allows you to create 2D graphs of functions that look like what students are familiar with.

The figure is described using a description file that is converted into a visual representation by schulplots.

Example

Sine Curve

This image is generated by the following description in YAML format:

figure:
  height: 8cm
  width: 10cm
axes_descriptors:
- axes:
    height: 6cm
    width: 8cm
    x_min: -3
    y_min: -2
  bottom: 1cm
  left: 1cm
  graphs:
  - function: sin(x)
    label: $\sin(x)$
  areas:
  - function:
    - sin(x)
    - 0*x
    label: $A = \int_0^\pi \sin(x)\,dx$
    condition: y1 >= y2
    plot_args:
      alpha: 0.3
      color: red

The description file has main sections:

  1. figure: This section contains information about the entire figure. In the example, it specifies the height and width of the figure.
  2. axes_descriptors: This section contains a description of axis systems and graphs/areas to be plotted within these axis systems.

It is also possible to draw multiple axis systems with multiple graphs:

Sine Curve

Installation

schulplots requires a recent version of Python. If you have Python installed (including pip, the python package manager), you can install it from PyPi with pip install schulplots.

Run from Colab

You can use schulplots without installation directly in Google Colab. For an example, click here. Screenshot

Documentation

You can find detailed documentation here (sorry, German only for now).

Limitations

  • The tool is limited to plotting function graphs in "typical" value ranges. It is intentionally not a comprehensive plotting tool for scientific purposes.
  • The tool was specifically developed for the conventions commonly used in the German-speaking region for function graphs (axes at the zero line, arrows in the positive direction, squared paper with a 5mm grid, etc.).
  • It is not a tool for changing graph parameters through a graphical user interface (GUI).

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

schulplots-0.9.8.tar.gz (21.6 kB view details)

Uploaded Source

Built Distribution

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

schulplots-0.9.8-py3-none-any.whl (26.4 kB view details)

Uploaded Python 3

File details

Details for the file schulplots-0.9.8.tar.gz.

File metadata

  • Download URL: schulplots-0.9.8.tar.gz
  • Upload date:
  • Size: 21.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.15

File hashes

Hashes for schulplots-0.9.8.tar.gz
Algorithm Hash digest
SHA256 141cf1d74ad70615d0e7892c154690864b55afbf984ecb2e699ac0e79b04a18e
MD5 3bff47b0b0ae183661091e241c1b1522
BLAKE2b-256 b7c35efe5e61bbdcf4fdfa3730c0b46d704d5fae535b8de346366b950cb448b4

See more details on using hashes here.

File details

Details for the file schulplots-0.9.8-py3-none-any.whl.

File metadata

  • Download URL: schulplots-0.9.8-py3-none-any.whl
  • Upload date:
  • Size: 26.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.15

File hashes

Hashes for schulplots-0.9.8-py3-none-any.whl
Algorithm Hash digest
SHA256 5de92f5b6022c6adf9e39e9c4a889e7c3959c4de2ebde3e2f932a0949cfa2c23
MD5 5d879ac04e2f0436ea3738389be88f82
BLAKE2b-256 6307235b678b55c9192276706dd56fce7418328c4d64aea729a45d8bc59265d6

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