Skip to content

Commit

Permalink
Add shape creation tutorial (#212)
Browse files Browse the repository at this point in the history
  • Loading branch information
stefmolin authored Sep 22, 2024
1 parent c16e3dc commit 1ab0712
Show file tree
Hide file tree
Showing 7 changed files with 326 additions and 7 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -162,7 +162,7 @@ Data Morph is intended to be used as a teaching tool to illustrate the importanc

- **Statistics Focus**: Have students pick one of the [built-in datasets](https://stefaniemolin.com/data-morph/stable/api/data_morph.data.loader.html#data_morph.data.loader.DataLoader), and morph it into all available [target shapes](https://stefaniemolin.com/data-morph/stable/api/data_morph.shapes.factory.html#data_morph.shapes.factory.ShapeFactory). Ask students to comment on which transformations worked best and why.
- **Creativity Focus**: Have students [create a new dataset](https://stefaniemolin.com/data-morph/stable/custom_datasets.html) (*e.g.*, your school logo or something that the student designs), and morph that into multiple [target shapes](https://stefaniemolin.com/data-morph/stable/api/data_morph.shapes.factory.html#data_morph.shapes.factory.ShapeFactory). Ask students to comment on which transformations worked best and why.
- **Math and Coding Focus**: Have students create a custom [shape](https://stefaniemolin.com/data-morph-talk/#/shape-class-hierarchy) by inheriting from `LineCollection` or `PointCollection` (there will be a tutorial on this in the future), and try morphing a couple of the [built-in datasets](https://stefaniemolin.com/data-morph/stable/api/data_morph.data.loader.html#data_morph.data.loader.DataLoader) into that shape. Ask students to explain how they chose to calculate the shape, and comment on which transformations worked best and why.
- **Math and Coding Focus**: Have students [create a custom shape](https://stefaniemolin.com/data-morph/dev/shape-creation.html) by inheriting from `LineCollection` or `PointCollection`, and try morphing a couple of the [built-in datasets](https://stefaniemolin.com/data-morph/stable/api/data_morph.data.loader.html#data_morph.data.loader.DataLoader) into that shape. Ask students to explain how they chose to calculate the shape, and comment on which transformations worked best and why.

If you end up using Data Morph in your classroom, I would love to hear about it. Please [send me a message](https://stefaniemolin.com/contact/) detailing how you used it and how it went.

Expand Down
200 changes: 200 additions & 0 deletions docs/_static/shapes_uml.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8 changes: 3 additions & 5 deletions docs/classroom-ideas.rst
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,9 @@ of data visualization. Here are some potential classroom activities for instruct
(*e.g.*, your school logo or something that the student designs), and morph that into multiple
`target shapes <./api/data_morph.shapes.factory.html#data_morph.shapes.factory.ShapeFactory>`_.
Ask students to comment on which transformations worked best and why.
* **Math and Coding Focus**: Have students create a custom `shape
<https://stefaniemolin.com/data-morph-talk/#/shape-class-hierarchy>`_ by inheriting
from :class:`.LineCollection` or :class:`.PointCollection` (there will be a
tutorial on this in the future), and try morphing a couple of the `built-in datasets
<./api/data_morph.data.loader.html#data_morph.data.loader.DataLoader>`_
* **Math and Coding Focus**: Have students :doc:`create a custom shape <shape_creation>`
by inheriting from :class:`.LineCollection` or :class:`.PointCollection`, and try morphing a
couple of the `built-in datasets <./api/data_morph.data.loader.html#data_morph.data.loader.DataLoader>`_
into that shape. Ask students to explain how they chose to calculate the shape, and
comment on which transformations worked best and why.

Expand Down
1 change: 1 addition & 0 deletions docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -147,6 +147,7 @@
'custom_datasets': [],
'quickstart': [],
'release_notes': [],
'shape_creation': [],
}


Expand Down
1 change: 1 addition & 0 deletions docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ Data Morph

quickstart
custom_datasets
shape_creation
cli
api
release_notes
Expand Down
3 changes: 2 additions & 1 deletion docs/quickstart.rst
Original file line number Diff line number Diff line change
Expand Up @@ -141,4 +141,5 @@ out the other built-in options:
* The :attr:`.ShapeFactory.AVAILABLE_SHAPES` attribute contains a list of available shapes, which
are also visualized in the :class:`.ShapeFactory` documentation.

For further customization, the :doc:`custom_datasets` tutorial discusses how to generate custom input datasets.
For further customization, the :doc:`custom_datasets` tutorial discusses how to generate custom input datasets,
and the :doc:`shape_creation` tutorial discusses how to generate custom target shapes.
Loading

0 comments on commit 1ab0712

Please sign in to comment.