matplotlib/pyplot contour glitch
Verfasst: Donnerstag 27. Oktober 2011, 10:11
Hallo,
ich habe ein weiteres matplotlib-Problem. Beim Plotten von Daten in einem contour/contourf-plot erhalte ich laufend derartige Fehler:

Irgendwelche zufälligen Werte (sie liegen nicht immer auf der 0-Achse) werden irgendwo an andere zufällige Positionen gesetzt, bevorzugt passiert das offenbar in oder nahe der Wert-Maxima.
Hier meine Daten, schön formatiert, dass man was erkennt:
erste Spalte ist der Radius und erste Zeile sind die Winkel in rad, der Rest sind die Werte.
Der gesamte Code ist lang, daher hier nur der relevante Teil zum Plotten:
Ich benutze hier matplotlib 1.0.1, die neueste Version wurde hier auf der Arbeit noch nicht aufgespielt.
Ist das einfach ein Bug, der in der neuen Version gefixt wurde, oder ist hier woanders der Fehler?
Kann es daran liegen, dass ich numpy-Arrays benutze?
ich habe ein weiteres matplotlib-Problem. Beim Plotten von Daten in einem contour/contourf-plot erhalte ich laufend derartige Fehler:

Irgendwelche zufälligen Werte (sie liegen nicht immer auf der 0-Achse) werden irgendwo an andere zufällige Positionen gesetzt, bevorzugt passiert das offenbar in oder nahe der Wert-Maxima.
Hier meine Daten, schön formatiert, dass man was erkennt:
erste Spalte ist der Radius und erste Zeile sind die Winkel in rad, der Rest sind die Werte.
Code: Alles auswählen
R v phi > 5.93411945661 6.02138591921 6.10865238181 6.1959188444 0.0 0.0872664625972 0.174532925194 0.261799387792 0.349065850389
0.0 6.66323800e-27 6.63495900e-27 6.62558200e-27 6.60352100e-27 6.60964200e-27 6.60353600e-27 6.63081200e-27 6.62266000e-27 6.67370700e-27
1000.0 5.07617500e-28 5.05506100e-28 5.05372800e-28 5.04892600e-28 5.04924800e-28 5.04301500e-28 5.06447500e-28 5.02483300e-28 5.08681100e-28
2000.0 1.19625800e-28 1.19687500e-28 1.19434800e-28 1.21356800e-28 1.20680400e-28 1.21217900e-28 1.19609800e-28 1.19236600e-28 1.20479800e-28
3000.0 4.73940300e-29 4.75005900e-29 4.67971300e-29 4.69390500e-29 4.73670700e-29 4.69731600e-29 4.68362300e-29 4.71174500e-29 4.75769300e-29
4000.0 2.27803800e-29 2.25619200e-29 2.24238600e-29 2.26766100e-29 2.26528400e-29 2.26401300e-29 2.24255000e-29 2.24993400e-29 2.24381300e-29
5000.0 1.26492100e-29 1.23364500e-29 1.21194700e-29 1.23386000e-29 1.24348800e-29 1.23284700e-29 1.22068200e-29 1.22731500e-29 1.26649300e-29
6000.0 7.27090000e-30 7.29139200e-30 7.31651100e-30 7.47506300e-30 7.56129800e-30 7.51710800e-30 7.35018700e-30 7.26523500e-30 7.28792100e-30
7000.0 4.84240000e-30 4.94281300e-30 4.81103100e-30 4.74216400e-30 4.78092000e-30 4.72422600e-30 4.83164400e-30 4.90985800e-30 4.85941600e-30
8000.0 3.46022300e-30 3.36890900e-30 3.36682700e-30 3.47580700e-30 3.53494000e-30 3.50597100e-30 3.36803600e-30 3.35559900e-30 3.47584500e-30
9000.0 2.52126400e-30 7.68375000e-15 1.89734800e-14 2.02061400e-14 2.14467300e-14 1.99803000e-14 1.89767200e-14 7.24216400e-15 2.55534900e-30
10000.0 1.85142200e-30 1.82423500e-30 1.43820500e-14 1.45595800e-14 1.40313700e-14 1.43981000e-14 1.47527100e-14 1.79013700e-30 1.83848600e-30
11000.0 1.39464500e-30 1.35859900e-30 1.07465600e-14 1.06635400e-14 1.04482200e-14 1.05019700e-14 1.06057300e-14 1.34122700e-30 1.37726800e-30
12000.0 1.11321900e-30 1.04815300e-30 1.05683000e-14 8.58970100e-15 8.91128700e-15 8.60694000e-15 1.04794800e-14 1.04905800e-30 1.10832300e-30
13000.0 9.18368400e-31 9.13062700e-31 5.37403600e-15 6.42003600e-15 6.16936800e-15 6.61267000e-15 5.64915600e-15 9.03851900e-31 9.14761400e-31
14000.0 7.00807300e-31 7.02818600e-31 1.23738100e-15 2.59884700e-16 8.11517900e-17 2.60080300e-16 1.15727200e-15 6.82047500e-31 7.01547800e-31
15000.0 6.21248000e-31 6.05734700e-31 4.45433800e-31 4.35463100e-31 4.50374500e-31 4.37237700e-31 4.48195100e-31 5.98924400e-31 6.24487000e-31
16000.0 4.60113000e-31 4.55759400e-31 3.44219400e-31 3.45355400e-31 3.54984000e-31 3.50278300e-31 3.45423600e-31 4.53234200e-31 4.59343800e-31
17000.0 3.88027700e-31 3.63775100e-31 2.85746200e-31 2.94679100e-31 3.01306200e-31 2.97427200e-31 2.85796100e-31 3.65410800e-31 3.88137000e-31
18000.0 3.13292200e-31 3.07109300e-31 2.38937100e-31 2.71904700e-31 2.74486800e-31 2.68557200e-31 2.38781200e-31 3.12740300e-31 3.10775300e-31
19000.0 2.76205300e-31 2.80186900e-31 2.10091300e-31 9.73237700e-15 1.05281500e-14 9.88503900e-15 2.12856600e-31 2.77093000e-31 2.72983600e-31
20000.0 2.49702300e-31 2.34838300e-31 1.76394800e-31 7.96850800e-15 8.21310900e-15 7.99789100e-15 1.76659100e-31 2.27167500e-31 2.47694900e-31
21000.0 1.80849900e-31 1.97829300e-31 1.51428000e-31 6.16291100e-15 5.89553600e-15 6.24719100e-15 1.52935100e-31 1.91507700e-31 1.83432800e-31
22000.0 0.00000000e+00 1.72856400e-31 1.33790000e-31 3.86847900e-15 3.75365400e-15 3.76099700e-15 1.32318000e-31 1.70910600e-31 0.00000000e+00
23000.0 0.00000000e+00 1.34097600e-31 1.05938100e-31 3.07086500e-15 2.94236600e-15 3.03065500e-15 1.07009900e-31 1.35241400e-31 0.00000000e+00
24000.0 0.00000000e+00 1.42671900e-31 1.03027800e-31 3.33720200e-16 4.31261900e-17 3.24715300e-16 1.04618400e-31 1.34839200e-31 0.00000000e+00
25000.0 0.00000000e+00 1.08768000e-31 8.10124000e-32 2.62574900e-32 2.73529600e-32 2.68257200e-32 8.25234000e-32 1.09585400e-31 0.00000000e+00
26000.0 0.00000000e+00 9.54718700e-32 7.29123200e-32 2.55412300e-32 2.55192400e-32 2.53944200e-32 7.31652200e-32 9.45355200e-32 0.00000000e+00
27000.0 0.00000000e+00 9.84080700e-32 7.48426800e-32 2.67712600e-32 2.73357400e-32 2.69229200e-32 7.54522300e-32 9.84420400e-32 0.00000000e+00
28000.0 0.00000000e+00 7.13572700e-32 5.87199500e-32 1.96148900e-32 2.01615700e-32 2.00997900e-32 5.94829700e-32 7.28160700e-32 0.00000000e+00
29000.0 0. 0. 0. 0. 0. 0. 0. 0. 0.
Code: Alles auswählen
R=zeros((l_num))
pi = 3.1415926535
for i in range(l_num):
R[i]=0.5*results[1][i][0]
for i in range(var_num):
var_one[i]=var_one[i]*pi/180
pl=figure()
ax=pl.add_axes([0.0,0.1,0.8,0.8], projection='polar')
contourf(var_one,R,results[5])
Ist das einfach ein Bug, der in der neuen Version gefixt wurde, oder ist hier woanders der Fehler?
Kann es daran liegen, dass ich numpy-Arrays benutze?