I'm not sure how to explain those spurious bits of noise in the pattern, actually. I never saw that (they were always a smooth sine wave) the first few times I ran the program. Then it started happening, and I thought it was because I had a few other things running at the same time, but even after shutting down other processes it was still happening. There's a time.sleep(.01) in the loop, so it's only doing 100 reps a second.
I'll try capturing the output to a Redis list and take a close look at the numbers, will post here what I find.