It is likely that most people are familiar with the paper placemats at Chinese restaurants that list the birth-years that go with the different signs of the Chinese zodiac. And further, I would bet, most of most are aware that after 12 years, we go back to the first sign again.
While at a Chinese restaurant, looking at such a place mat, I thought of a way to make its cyclical nature easier for a 6-year-old to understand. How about repeating the 12 Chinese zodiac sign names along a spiral? Or, rather, placing years along a spiral and letting the angle represent the zodiac sign. Leaving space to write family and friends' names would be a touch the makers of the place mats had left out. Hopefully it would be a fun chart for a 6-year-old to fill in.
It occured to me that the only thing I knew that could produce a
smooth spiral with precise placement of labels according to a formula
would be PostScript, through a program I might hopefully be able to write.
What I didn't know was that I'd have to use cubic splines to do the job well.
That led to having to compute derivatives...
PostScript chinese zodiac.ps and PDF chinese zodiac.pdf.
For the PostScript programmers out there, I neatened up the spiral drawing procedure: spiral.ps
If you want to get technical, I put some notes about the start of the Chinese years as comments within the PostScript file. For convenience, here's a text file with those comments: chinese_zodiac.txt We won't bother the 6 year-old with these just yet.