現在、グラフにいくつかのポイントを追加し、特定のポイントごとに注釈を追加しています。ただし、試行するたびに、実際に画面に表示されるのは注釈のサブセットのみです。他の注釈は、デバッグと印刷を介して「そこに」ありますが、何らかの理由で表示されないだけです。私が間違っていることはありますか?
import matplotlib.pyplot as plt
self.fig = plt.figure()
self.ax = self.fig.add_subplot(111, projection='polar')
li = [[0.2, 1], [0.4, 1], [0.6, 1], [0.8, 1], [1, 1]]
for x,y in li:
point, = self.ax.plot(x, y, marker='o', color='r', markersize=12)
annotation = self.ax.annotate("Comment goes here",
xy=(x,y), xycoords='data',
xytext=(x,y), textcoords='data'
)
self.fig.canvas.draw()
いくつかのデバッグの後、projection='polar'
修正を削除すると問題が修正され、すべての注釈が表示されるようです。バグのある注釈を引き起こす極座標グラフに固有の何かがありますか?
編集:実際には、問題を単純化しすぎた可能性があります。プログラムの単純化されたバージョンを試しましたが、機能しました。私はmatplotlibとgtk+の上に構築された既存のフレームワークを処理しているので、私が気付いていない他の隠れた問題があるかもしれません。
Edit2:問題を追跡しました。更新機能で、グラフ(半径)のylimを1(すべての点と同じ)に設定すると、一部の注釈が消えてしまうようです。理由はわかりませんが、ylimをそのままにしておくと機能します。