Some devices cannot handle large amounts of data being sent at once. The data should be send in chunks to the plotter.
I couldn't get any of the flow control methods to work with my HP 7550A so I hacked in some buffer space checks into device.py before sending chunks of data. This should work with plotters that return free buffer space with the \e.B escape sequence. Not very robust, but it beats running at 300 baud to keep the buffer empty.