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

Uploaded Python 3

File details

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

File metadata

  • Download URL: schulplots-0.9.7.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.7.tar.gz
Algorithm Hash digest
SHA256 2929573c8f017e5a71e58ae278ad0337649cd3f0b7484e2e245b57c79574b4d4
MD5 6d548ff93085c0e6cb537aecc2401fdf
BLAKE2b-256 09386df07dcbc6ca805c7023e9039c63ce11c1fa5a81d0a11b03ed44f7e6ebec

See more details on using hashes here.

File details

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

File metadata

  • Download URL: schulplots-0.9.7-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.7-py3-none-any.whl
Algorithm Hash digest
SHA256 b65cbb3c1302a7bd6d35a605c70a48df91194fdbf252203721b790835a0d8db4
MD5 497add1adb775b645644658d11a865d8
BLAKE2b-256 fccf3b14102008666607ee4730a84f17cffa8673b5c265838a18de9e9a257e35

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