The show() method calls plot(), saves to a temporary file, and then runs an image viewer with the output. If you just want the file, use plot().save('filename.png').