Most recent 240 articles



Dec 2025

  1. Operator overloading

Nov 2025

  1. Integers

Jan 2024

  1. Using subplots in Matplotlib
  2. Lambda functions

Dec 2023

  1. Function objects and lambdas

Apr 2023

  1. generativepy.analytics module
  2. generativepy.geometry3d module
  3. generativepy.math module
  4. generativepy.shape2d module
  5. generativepy.table module

Oct 2022

  1. Pong game using Pygame - step 3
  2. Pong game using Pygame - step 2

Sep 2022

  1. Numpy efficiency
  2. Using zip in a for loop
  3. Using enumerate in a for loop
  4. For loop using range vs iterables
  5. For loops
  6. Pong game using Pygame - step 1

Aug 2022

  1. Creating a PNG image of a formula in generativepy
  2. itertools module - permutations
  3. itertools module - cartesian product
  4. itertools module - combinatoric iterators

Jul 2022

  1. itertools module - combinations
  2. Line plot in Matplotlib
  3. Fitting a line to a scatter plot in Matplotlib
  4. Scatter plots in Matplotlib
  5. Stem plots in Matplotlib
  6. Styling lines and markers with Matplotlib

Jun 2022

  1. Box plots in Matplotlib
  2. Histograms in Matplotlib
  3. Violin plots in Matplotlib
  4. Data colouring Matplotlib bar charts
  5. Error bars in Matplotlib
  6. Multiple line plots in Matplotlib
  7. Using numpy with Matplotlib
  8. Saving Matplotlib plots to file
  9. Creating simple plots with Matplotlib
  10. RegularPolygon
  11. Regular polygons in generativepy
  12. generativepy.color module
  13. generativepy versions
  14. Colour schemes in generativepy

May 2022

  1. Function decorators
  2. Advanced vectorisation in numpy

Apr 2022

  1. generativepy.formulas module
  2. Structural optimisation

Mar 2022

  1. Pie charts in Matplotlib
  2. Bar charts in Matplotlib
  3. Key advantages of NumPy
  4. Low level code optimisation
  5. Chain of responsibility pattern
  6. Path objects in generativepy
  7. Turtles in generativepy
  8. Optimisation good practice

Feb 2022

  1. Optimisation
  2. Geometric markers in generativepy

Jan 2022

  1. AngleMarker
  2. Paratick
  3. Tick
  4. Transform class in generativepy
  5. Transform
  6. Images in generativepy
  7. Complex paths in generativepy
  8. Composite paths in generativepy
  9. Text metrics in generativepy
  10. Text offset in generativepy
  11. Text in generativepy

Dec 2021

  1. Fill styles in generativepy
  2. Stroke styles in generativepy
  3. Bezier curves in generativepy
  4. itertools module - general iterators

Nov 2021

  1. Circles and ellipses in generativepy
  2. Linear gradients in generativepy
  3. Colour interpolation in generativepy
  4. Colour properties in generativepy
  5. Alpha colour in generativepy
  6. Colour spaces in generativepy
  7. Derived colour in generativepy
  8. Creating an SVG file with generativepy
  9. The setup function in generativepy
  10. Simple image in generativepy
  11. Decorator pattern

Oct 2021

  1. itertools module - infinite iterators
  2. Calling functions
  3. Declaring functions
  4. Behavioural design patterns
  5. Builder pattern
  6. Creational design patterns
  7. Structural design patterns

Sep 2021

  1. Strategy pattern
  2. Iterators vs iterables
  3. Iterator/iterable protocol

Aug 2021

  1. Singleton pattern
  2. Callable objects
  3. Collections
  4. Creating a simple class

Jul 2021

  1. Image deforming recipes in Pillow

Jun 2021

  1. L Systems and Koch curves
  2. L Systems - creating trees and ferns
  3. L Systems with generativepy
  4. Burning ship fractal with generativepy
  5. Turtle
  6. Cardioid string art with generativepy
  7. Chaos game
  8. Gingerbread man fractal with generativepy
  9. Coloured Mandelbrot set with generativepy
  10. Mandelbrot set with generativepy
  11. King's dream fractal with generativepy
  12. Coloured tinkerbell fractal with generativepy
  13. Tinkerbell fractal with generativepy

Apr 2021

  1. CMYK colour space
  2. Greyscale colour space
  3. HSL colour space
  4. Luminance-chrominance colour spaces
  5. Colour depth
  6. Colour spaces
  7. Light and colour
  8. RGB colour space
  9. Exceptions
  10. Slices

Mar 2021

  1. Image operations with NumPy
  2. Image geometric transforms with NumPy and SciPy
  3. Bouncing ball in pygame
  4. Sprite animation in pygame
  5. generativepy.drawing3d module
  6. Pygame sprite class

Feb 2021

  1. Broadcasting in in numpy
  2. Reducing and accumulating numpy arrays

Jan 2021

  1. Universal functions in in numpy
  2. Image

Nov 2020

  1. generativepy Frames
  2. generativepy.nparray module
  3. generativepy.utils module

Oct 2020

  1. Path
  2. Bezier
  3. Image colour adjustment recipes in Pillow
  4. Image colour effects recipes in Pillow
  5. Image resizing recipes in Pillow
  6. Image transforming recipes in Pillow
  7. A simple turtle in generativepy
  8. Polygons in generativepy
  9. Clip regions in generativepy
  10. Fill and stroke in generativepy
  11. Creating GIFs in generativepy
  12. generativepy.gif module

Sep 2020

  1. Colour mode in Pillow
  2. generativepy.bitmap module
  3. Partial application

Aug 2020

  1. Device and user space in generativepy.drawing
  2. Ellipse
  3. Square
  4. Triangle
  5. Arrowhead
  6. Circle
  7. Line
  8. Polygon
  9. Rectangle
  10. Text
  11. generativepy.graph module
  12. generativepy.tween module
  13. What is unit testing in Python?
  14. generativepy.geometry module
  15. Patterns - special fills

Jul 2020

  1. generativepy.drawing module
  2. generativepy.movie module
  3. Installing generativepy
  4. List monad
  5. Maybe monad
  6. Monads

Jun 2020

  1. Failure monad

May 2020

  1. Exception handling
  2. With statements
  3. Data types
  4. Objects and variables

Mar 2020

  1. Abstract Data Types - coming soon
  2. Big-O notation - coming soon
  3. Dictionaries (data structures) - coming soon
  4. Streams (data structures) - coming soon
  5. Arrays (data structures)
  6. Lists (data structures)
  7. Named tuples
  8. Walrus Operator

Feb 2020

  1. Multidimensional collections
  2. Cryptography terms
  3. Fernet system for symmetric encryption
  4. Recursion and the lru_cache in Python
  5. Paths and complex shapes in Pycairo
  6. Operators

Jan 2020

  1. Flask webserver - adding a detail view
  2. Flask webserver - adding an About page
  3. Flask webserver - adding HTML and CSS

Sep 2019

  1. Bezier curves in Pycairo
  2. Closures
  3. Functional design patterns
  4. Transforms in Pycairo - rotate
  5. Transforms in Pycairo - scale
  6. Creating random data in numpy
  7. Creating numpy arrays from existing data
  8. Creating data series in numpy
  9. Creating numpy arrays with fixed values
  10. Data types
  11. Functions
  12. Pure functions
  13. Map/reduce example

Jan 2019

  1. In place operator overloading
  2. Example classes
  3. Overloading str to control print behaviour

Oct 2018

  1. Transforming iterables
  2. Magic methods

Aug 2018

  1. Built-in functions
  2. Sequences
  3. String functions
  4. Tuples
  5. Short circuit evaluation
  6. List comprehensions
  7. Functions
  8. CSV files
  9. Files
  10. Functions
  11. More loops
  12. Strings

Jul 2018

  1. If statements
  2. Lists
  3. Loops
  4. Programming logic
  5. Hello, world!
  6. Using Python as a calculator
  7. Built-in functions on iterables

Apr 2018

  1. Drawing shapes in Pycairo

Mar 2018

  1. Lists vs tuples
  2. Immutable objects
  3. Objects and identity
  4. Generators
  5. Iterators
  6. Introduction to Functional Programming
  7. Global variables
  8. Looping over selected items
  9. Changing the loop order
  10. Looping over multiple items (old article)

Feb 2018

  1. Anatomy of a numpy array

Join the GraphicMaths/PythonInformer Newsletter

Sign up using this form to receive an email when new content is added to the graphpicmaths or pythoninformer websites:

If you found this article useful, you might be interested in the book NumPy Recipes or other books by the same author.

Popular tags

2d arrays abstract data type and angle animation arc array arrays bar chart bar style behavioural pattern bezier curve built-in function callable object chain circle classes close closure cmyk colour combinations comparison operator context context manager conversion count creational pattern data science data types decorator design pattern device space dictionary drawing duck typing efficiency ellipse else encryption enumerate fill filter for loop formula function function composition function plot functools game development generativepy tutorial generator geometry gif global variable greyscale higher order function hsl html image image processing imagesurface immutable object in operator index inner function input installing integer iter iterable iterator itertools join l system lambda function latex len lerp line line plot line style linear gradient linspace list list comprehension logical operator lru_cache magic method mandelbrot mandelbrot set map marker style matplotlib monad mutability named parameter numeric python numpy object open operator optimisation optional parameter or pandas path pattern permutations pie chart pil pillow polygon pong positional parameter print product programming paradigms programming techniques pure function python standard library range recipes rectangle recursion regular polygon repeat rgb rotation roundrect scaling scatter plot scipy sector segment sequence setup shape singleton slicing sound spirograph sprite square str stream string stroke structural pattern symmetric encryption template tex text tinkerbell fractal transform translation transparency triangle truthy value tuple turtle unpacking user space vectorisation webserver website while loop zip zip_longest