ZeroDivisionError matplotlib, zu kleiner float Zahl
Verfasst: Mittwoch 17. November 2010, 10:18
Hallo Leute,
ich stoße gerade auf ein Problem bei matplotlib. Ich will einen Pfeil zu einem Punkt zeichnen und dazu ein Textfeld erstellen, das soll ein klein wenig versetzt sein, damit der Pfeil nicht senkrecht auf das Ziel zeigt. Um die Koordinaten zu bestimmen frage ich die Position des Punkts ab. Dieser scheint aber "zu genau" für die Textfeld Positionierung zu sein und ich frage mich, wie man eine float mit weniger Nachstellen umwandelt. Hier mal ein Beispiel:
Bei xytest habe ich die Koordinate mal direkt eingegeben und nicht aus dem tuple übernommen, wie ich es eigentlich mache. Interessant ist, wenn ich die letzten beiden Stellen, also die 45 weg lasse, funktioniert es.
Ich würde am liebsten nur 0.15 da stehen haben, aber das muss ja dynamisch sein...
Hat jemand eine Idee?
ich stoße gerade auf ein Problem bei matplotlib. Ich will einen Pfeil zu einem Punkt zeichnen und dazu ein Textfeld erstellen, das soll ein klein wenig versetzt sein, damit der Pfeil nicht senkrecht auf das Ziel zeigt. Um die Koordinaten zu bestimmen frage ich die Position des Punkts ab. Dieser scheint aber "zu genau" für die Textfeld Positionierung zu sein und ich frage mich, wie man eine float mit weniger Nachstellen umwandelt. Hier mal ein Beispiel:
Code: Alles auswählen
ax.annotate(u'%.2f \u00c5 1/2bit'%(1/result_halfbit[0]), xy=result_halfbit, xycoords='data',
xytext=(0.15141143015791145,0.8), textcoords='data', arrowprops=dict(facecolor='black',
shrink=0.02, width=2, headwidth=8), horizontalalignment='left', verticalalignment='top')
Ich würde am liebsten nur 0.15 da stehen haben, aber das muss ja dynamisch sein...
Hat jemand eine Idee?