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.9.tar.gz (21.9 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.9-py3-none-any.whl (26.8 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for schulplots-0.9.9.tar.gz
Algorithm Hash digest
SHA256 bf49e90c46a443a500952dedf79410db563801792f36b868be9ce846e0a4282f
MD5 73b22bf287c03bb2eb16b9faf47cca5c
BLAKE2b-256 01f2f614b64da5012cbdc878aaaffd9a2697034cdab60481a3eaead8e7753bcf

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for schulplots-0.9.9-py3-none-any.whl
Algorithm Hash digest
SHA256 c5703e97cb33deaab5befc00d3f48db1541b8000933e0bb4e7261e577311d8da
MD5 8213860e5c85cc8d0195b4b93e01cc3b
BLAKE2b-256 689d9c9573a2c768db77ad98bdd2f62a16f70b79ec2eb7fbd67224da30aea97d

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