hpgl_mpl.py

Fri, 21 Dec 2007 23:51:36 +0100

author
David Douard <david.douard@logilab.fr>
date
Fri, 21 Dec 2007 23:51:36 +0100
changeset 18
c691b040e8c9
permissions
-rw-r--r--

added a (very) beginning HPGL parser (with a simplist matplotlib backend)

# -*- coding: utf-8 -*-
import numpy
import pylab

from hpgl_parser import HPGLParser

class HPGLmplPlotter(HPGLParser):
    pens = "krbgcmyw"
    lines = ['-', ':', '--', '-.', '.', '-', '-', '-']
    def __init__(self, data):        
        super(HPGLmplPlotter, self).__init__(data)
        pylab.show()
        
    def plot_symbols(self, points):
        x, y = points.T
        pylab.plot(x, y, 'o')

    def plot_lines(self, points):
        x, y = points.T
        pylab.plot(x, y, self.pens[self.pen]+self.lines[self.line_type])
        
if __name__ == "__main__":
    import sys
    data = open(sys.argv[1]).read()
    HPGLmplPlotter(data)
    

mercurial