The following works for me.
from pylab import *
plot([1,2,3], linestyle='dashed', label='foo')
legend()
show()
Can you be more specific about how you create the error?
Mike
Carlos Grohmann wrote:
> Hi all,
>
> I'm wirking on a wxpython app, and I realized that the legend of a
> matplotlib plot only works with solid lines. If I change the
> linestyles to dashed, dotted or dashdot, it gives an error:
>
> Traceback (most recent call last):
> File "/home/guano/Arbeit/Stout/StereoPanel.py", line 551, in PlotChecked
> self.stereoCanvas.draw()
> File "/usr/lib/pymodules/python2.6/matplotlib/backends/backend_wxagg.py",
> line 59, in draw
> FigureCanvasAgg.draw(self)
> File "/usr/lib/pymodules/python2.6/matplotlib/backends/backend_agg.py",
> line 314, in draw
> self.figure.draw(self.renderer)
> File "/usr/lib/pymodules/python2.6/matplotlib/artist.py", line 46,
> in draw_wrapper
> draw(artist, renderer, *kl)
> File "/usr/lib/pymodules/python2.6/matplotlib/figure.py", line 774, in draw
> for a in self.axes: a.draw(renderer)
> File "/usr/lib/pymodules/python2.6/matplotlib/artist.py", line 46,
> in draw_wrapper
> draw(artist, renderer, *kl)
> File "/usr/lib/pymodules/python2.6/matplotlib/axes.py", line 1721, in draw
> a.draw(renderer)
> File "/usr/lib/pymodules/python2.6/matplotlib/artist.py", line 46,
> in draw_wrapper
> draw(artist, renderer, *kl)
> File "/usr/lib/pymodules/python2.6/matplotlib/legend.py", line 386, in draw
> self._legend_box.draw(renderer)
> File "/usr/lib/pymodules/python2.6/matplotlib/offsetbox.py", line 224, in draw
> c.draw(renderer)
> File "/usr/lib/pymodules/python2.6/matplotlib/offsetbox.py", line 224, in draw
> c.draw(renderer)
> File "/usr/lib/pymodules/python2.6/matplotlib/offsetbox.py", line 224, in draw
> c.draw(renderer)
> File "/usr/lib/pymodules/python2.6/matplotlib/offsetbox.py", line 224, in draw
> c.draw(renderer)
> File "/usr/lib/pymodules/python2.6/matplotlib/offsetbox.py", line 488, in draw
> c.draw(renderer)
> File "/usr/lib/pymodules/python2.6/matplotlib/artist.py", line 46,
> in draw_wrapper
> draw(artist, renderer, *kl)
> File "/usr/lib/pymodules/python2.6/matplotlib/lines.py", line 535, in draw
> drawFunc(renderer, gc, tpath, affine.frozen())
> File "/usr/lib/pymodules/python2.6/matplotlib/lines.py", line 874,
> in _draw_lines
> self._lineFunc(renderer, gc, path, trans)
> File "/usr/lib/pymodules/python2.6/matplotlib/lines.py", line 925,
> in _draw_dashed
> renderer.draw_path(gc, path, trans)
> File "/usr/lib/pymodules/python2.6/matplotlib/backends/backend_agg.py",
> line 98, in draw_path
> self._renderer.draw_path(gc, path, transform, rgbFace)
> TypeError: float() argument must be a string or a number
>
>
>
> This happens for Line2D and for LineCollection as well.
>
> TIA
>
> Carlos
>
>
--
Michael Droettboom
Science Software Branch
Operations and Engineering Division
Space Telescope Science Institute
Operated by AURA for NASA