In our endavor to make learning fun and free of memorization, we have been using Python to allow children to experiment and analyze data to form their own opinion and discover facts. This way, children engage is learning process with more intensity and the they show higher retention rate vis a vis conventional learning.
This makes them think and try different things before they get it right. The focus shifts from being always 'right' to get it right after several failed attempts.
Children create simple shapes using markers, move marker left, right , top and bottom. They learn coordinates geometry where the position of points on the plane.
They learn how to plot different type of shapes with simple marker shapes.
We also make sure that we don't use loop or variables that may make things difficult to follow.
import matplotlib.pyplot as plt
plt.plot( 0, 0, marker='*')
plt.plot( 0, 0, marker='*', color='red', markersize = 30)
plt.plot( 0, 0, marker='*', color='red', markersize = 30)
plt.plot( 2, 0, marker='*', color='blue', markersize = 30)
plt.plot( 0, 0, marker='*', color='red', markersize = 30)
plt.plot( 2, 0, marker='*', color='blue', markersize = 30)
plt.plot( -2, 0, marker='*', color='green', markersize = 30)
plt.plot( 0, 0, marker='*', color='red', markersize = 30)
plt.plot( 2, 0, marker='*', color='blue', markersize = 30)
plt.plot( -2, 0, marker='*', color='green', markersize = 30)
plt.plot( -2, 2, marker='*', color='yellow', markersize = 30)
plt.plot( -2, -2, marker='*', color='red', markersize = 30)
plt.plot( 2, 0, marker='*', color='blue', markersize = 30)
plt.plot( -2, 0, marker='*', color='green', markersize = 30)
plt.plot( -2, 2, marker='*', color='yellow', markersize = 30)
plt.plot( -2, -2, marker='*', color='red', markersize = 30)
plt.plot( 2, 0, marker='*', color='blue', markersize = 30)
plt.plot( -2, 0, marker='*', color='green', markersize = 30)
plt.plot( -2, 2, marker='*', color='yellow', markersize = 30)
plt.plot( 2, 2, marker='o', color='purple', markersize = 20)
plt.plot( -2, -2, marker='*', color='red', markersize = 30)
plt.plot( 2, 0, marker='*', color='blue', markersize = 30)
plt.plot( -2, 0, marker='*', color='green', markersize = 30)
plt.plot( -2, 2, marker='*', color='yellow', markersize = 30)
plt.plot( 2, 2, marker='o', color='purple', markersize = 20)
plt.plot( 2, -2, marker='o', color='green', markersize = 20)
plt.plot( -2, -2, marker='*', color='red', markersize = 30)
plt.plot( 2, 0, marker='*', color='blue', markersize = 30)
plt.plot( -2, 0, marker='*', color='green', markersize = 30)
plt.plot( -2, 2, marker='*', color='yellow', markersize = 30)
plt.plot( 2, 2, marker='o', color='purple', markersize = 20)
plt.plot( 2, -2, marker='o', color='green', markersize = 20)
plt.plot( 0, 0, marker='^', color='grey', markersize = 20)
plt.plot( 0, 0, marker='^', color='grey', markersize = 20)
plt.plot( -0.5, -0.5, marker='*', color='pink', markersize = 30)
plt.plot( -1, -1, marker='*', color='yellow', markersize = 30)
plt.plot( -1.5, -1.5, marker='*', color='green', markersize = 30)
plt.plot( -2, -2, marker='*', color='red', markersize = 30)
plt.plot( 0.5, 0.5, marker='o', color='green', markersize = 20)
plt.plot( 1, 1, marker='*', color='blue', markersize = 30)
plt.plot( 1.5, 1.5, marker='*', color='red', markersize = 30)
plt.plot( 2, 2, marker='o', color='purple', markersize = 20)
plt.plot( 0, 0, marker='^', color='grey', markersize = 20)
plt.plot( -0.5, -0.5, marker='*', color='pink', markersize = 30)
plt.plot( -1, -1, marker='*', color='yellow', markersize = 30)
plt.plot( -1.5, -1.5, marker='*', color='green', markersize = 30)
plt.plot( -2, -2, marker='*', color='red', markersize = 30)
plt.plot( 0.5, 0.5, marker='o', color='green', markersize = 20)
plt.plot( 1, 1, marker='*', color='blue', markersize = 30)
plt.plot( 1.5, 1.5, marker='*', color='red', markersize = 30)
plt.plot( 2, 2, marker='o', color='purple', markersize = 20)
plt.plot( 2, 1, marker='*', color='lightgreen', markersize = 30)
plt.plot( 2, 0, marker='*', color='blue', markersize = 30)
plt.plot( 2, -1, marker='*', color='purple', markersize = 30)
plt.plot( 2, -2, marker='*', color='yellow', markersize = 30)
plt.plot( -1, -2, marker='*', color='lightgreen', markersize = 30)
plt.plot( 0, -2, marker='*', color='blue', markersize = 30)
plt.plot( 1, -2, marker='*', color='purple', markersize = 30)
plt.plot( 0, 0, marker='*', color='grey', markersize = 20)
plt.plot( 0, -5, marker='*', color='red', markersize = 20)
plt.plot( 0, 5, marker='*', color='blue', markersize = 20)
plt.plot( 5, 0, marker='*', color='green', markersize = 20)
plt.plot( -5, 0, marker='*', color='green', markersize = 20)
plt.plot( -2.5, -2.5, marker='*', color='blue', markersize = 20)
plt.plot( -2.5, 2.5, marker='*', color='red', markersize = 20)
plt.plot( 2.5, 2.5, marker='*', color='red', markersize = 20)
plt.plot( 2.5, -2.5, marker='*', color='blue', markersize = 20)
plt.plot( 0, -6.5, marker='^', color='pink', markersize = 5)
plt.plot( 0, -7.5, marker='^', color='pink', markersize = 5)
plt.plot( 0, -8.5, marker='^', color='pink', markersize = 5)
plt.plot( 0, -9.5, marker='^', color='pink', markersize = 5)
plt.plot( 0, -10.5, marker='^', color='pink', markersize = 5)
plt.plot( 0, -11.5, marker='^', color='pink', markersize = 5)
plt.plot( 0, -12.5, marker='^', color='pink', markersize = 5)
plt.xlim(-15, 15)
plt.ylim(-15, 15)
#horizontal line at center
plt.plot( -7.5, 0, marker='*', color='green', markersize = 10)
plt.plot( -5, 0, marker='*', color='green', markersize = 10)
plt.plot( -2.5, 0, marker='*', color='green', markersize = 10)
plt.plot( 0, 0, marker='*', color='red', markersize = 10)
plt.plot( 2.5, 0, marker='*', color='green', markersize = 10)
plt.plot( 5, 0, marker='*', color='green', markersize = 10)
plt.plot( 7.5, 0, marker='*', color='green', markersize = 10)
#horizontal line at above center
plt.plot( -6.0, +2.5, marker='*', color='green', markersize = 10)
plt.plot( -3.75, +2.5, marker='*', color='green', markersize = 10)
plt.plot( -1.25, +2.5, marker='*', color='green', markersize = 10)
plt.plot( 1.25, +2.5, marker='*', color='green', markersize = 10)
plt.plot( 3.75, +2.5, marker='*', color='green', markersize = 10)
plt.plot( 6.0, +2.5, marker='*', color='green', markersize = 10)
#horizontal line at one below center
plt.plot( -6.0, -2.5, marker='*', color='green', markersize = 10)
plt.plot( -3.75, -2.5, marker='*', color='green', markersize = 10)
plt.plot( -1.25, -2.5, marker='*', color='green', markersize = 10)
plt.plot( 1.25, -2.5, marker='*', color='green', markersize = 10)
plt.plot( 3.75, -2.5, marker='*', color='green', markersize = 10)
plt.plot( 6.0, -2.5, marker='*', color='green', markersize = 10)
#horizontal line at two rows above center
plt.plot( -5, 5, marker='*', color='green', markersize = 10)
plt.plot( -2.5, 5, marker='*', color='green', markersize = 10)
plt.plot( 0, 5, marker='*', color='green', markersize = 10)
plt.plot( 2.5, 5, marker='*', color='green', markersize = 10)
plt.plot( 5, 5, marker='*', color='green', markersize = 10)
#horizontal line at two rows below center
plt.plot( -5, -5, marker='*', color='green', markersize = 10)
plt.plot( -2.5, -5, marker='*', color='green', markersize = 10)
plt.plot( 0, -5, marker='*', color='green', markersize = 10)
plt.plot( 2.5, -5, marker='*', color='green', markersize = 10)
plt.plot( 5, -5, marker='*', color='green', markersize = 10)
#horizontal line at three rows above center
plt.plot( -3.75, +7.5, marker='*', color='green', markersize = 10)
plt.plot( -1.25, +7.5, marker='*', color='green', markersize = 10)
plt.plot( 1.25, +7.5, marker='*', color='green', markersize = 10)
plt.plot( 3.75, +7.5, marker='*', color='green', markersize = 10)
#horizontal line at three rows below center
plt.plot( -3.75, -7.5, marker='*', color='green', markersize = 10)
plt.plot( -1.25, -7.5, marker='*', color='green', markersize = 10)
plt.plot( 1.25, -7.5, marker='*', color='green', markersize = 10)
plt.plot( 3.75, -7.5, marker='*', color='green', markersize = 10)
#horizontal line at four rows above center
plt.plot( -2.5, 10, marker='*', color='green', markersize = 10)
plt.plot( 0, 10, marker='*', color='green', markersize = 10)
plt.plot( 2.5, 10, marker='*', color='green', markersize = 10)
#horizontal line at four rows below center
plt.plot( -2.5, -10, marker='*', color='green', markersize = 10)
plt.plot( 0, -10, marker='*', color='green', markersize = 10)
plt.plot( 2.5, -10, marker='*', color='green', markersize = 10)
#horizontal line at five rows above center
plt.plot( -1.25, +12.5, marker='*', color='green', markersize = 10)
plt.plot( 1.25, +12.5, marker='*', color='green', markersize = 10)
#horizontal line at five rows below center
plt.plot( -1.25, -12.5, marker='*', color='green', markersize = 10)
plt.plot( 1.25, -12.5, marker='*', color='green', markersize = 10)
#horizontal line at top
plt.plot( 0, 15, marker='*', color='green', markersize = 10)
#horizontal line at bottom
plt.plot( 0, -15, marker='*', color='green', markersize = 10)
plt.xlim(-20, 20)
plt.ylim(-20, 20)