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.5.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.5-py3-none-any.whl (26.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: schulplots-0.9.5.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.5.tar.gz
Algorithm Hash digest
SHA256 e0e38eebf6a21638eb5a3561332e931b0567a643ef97e4c1fd31f04abc317a9d
MD5 36bfe0ae9c07d3afd112afe7236742e9
BLAKE2b-256 984d1b7ba886d403fec4d66ecb295108806b3944954cf7d4dc83637026f88be3

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for schulplots-0.9.5-py3-none-any.whl
Algorithm Hash digest
SHA256 58d962cafc6c76d1cf5f1b0f687dcf36511dce9b5a8c4b42386fc37e09a9ae52
MD5 57c1b70324325388540ac13d2191a13d
BLAKE2b-256 dce1fa87b8d42d2b3981f170df52c3cb326edf73385652adeb17a5b0dc79ee50

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