Here. I found out that if I use
from pylab import * as in the example, it works. But in my app, I'm using import wx import matplotlib from matplotlib.figure import Figure from matplotlib.backends.backend_wxagg import FigureCanvasWxAgg as FigureCanvas from matplotlib.backends.backend_wxagg import NavigationToolbar2WxAgg from matplotlib.font_manager import fontManager, FontProperties from matplotlib.collections import LineCollection could that be the culprit? Carlos script: from pylab import * import numpy as np from matplotlib.collections import LineCollection # We need to set the plot limits, the will not autoscale ax = axes() ax.set_xlim((-1,1)) ax.set_ylim((-1,1)) strike = [0,45,90,135] dip = [10,20,30,40] listXY = [] for i in range(len(strike)): beta = np.radians(strike[i]) phi = np.radians(np.arange(-90,92,2)) lamb = np.radians((90 - dip[i])) alpha = np.arccos(np.cos(phi) * np.cos(lamb)) tq = np.sqrt(2) * np.sin(alpha/2) sint = np.sin(phi) / np.sin(alpha) temps = 1 - (sint * sint) x = tq * np.sqrt(temps) y = tq * sint x1 = np.cos(beta) * x + np.sin(beta) * y y1 = -np.sin(beta) * x + np.cos(beta) * y listXY.append(zip(x1,y1)) col = LineCollection(listXY, linewidths=1, colors='red', linestyles = 'dotted') ax.add_collection(col, autolim=True) show() On Wed, Apr 28, 2010 at 09:46, Michael Droettboom <md...@stsci.edu> wrote: > I can't reproduce the error on 0.99. Can you provide a complete script that > reproduces the error? > > Mike > > Carlos Grohmann wrote: >> >> I've been trying to change the linestyles in a LineCollection, but >> without any success... >> >> If I'm using: >> col = collections.LineCollection(listXY, linewidths=circwdt, >> colors=circcol, linestyle='solid', label=plabel) >> >> it works fine, but anything other than 'solid' gives me an error when >> the code calls FigureCanvasAgg.draw(self) (it is a wxpython app): >> >> Traceback (most recent call last): >> File "/home/guano/Arbeit/Stout/StereoPanel.py", line 552, 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 >> >> >> >> >From the MPL docs, I see that i should be able to use other linestyles: >> >> >> http://matplotlib.sourceforge.net/api/collections_api.html#matplotlib.collections.LineCollection >> >> linestyles [ ‘solid’ | ‘dashed’ | ‘dashdot’ | ‘dotted’ ] >> a string or dash tuple. The dash tuple is: >> >> >> >> I'm using MPL 0.99.0 in Ubuntu Karmic (9.10) >> >> tks >> >> >> > > -- > Michael Droettboom > Science Software Branch > Operations and Engineering Division > Space Telescope Science Institute > Operated by AURA for NASA > > -- Prof. Carlos Henrique Grohmann - Geologist D.Sc. Institute of Geosciences - Univ. of São Paulo, Brazil http://www.igc.usp.br/pessoais/guano Linux User #89721 ________________ Can’t stop the signal. ------------------------------------------------------------------------------ _______________________________________________ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users