mpld3 を使用して、イントラネット Web サイトにグラフを表示しています。グラフを dict に保存し、mpld3.js を使用してクライアント側でレンダリングするオプションを使用しています。
注釈を使用する場合を除いて、グラフは正常にレンダリングされます。それらは明らかに相殺されています。オフセットを (0, 0) に設定しても、注釈はまだかなりずれているため、理由がわかりません。
これを説明するために、この記事の例をコピーして貼り付けました: Matplotlib: How to put individual tags for a scatter plot
以下は、matplotlib によって正しく生成された画像です。
上記のリンクのコードを使用して、両方の画像が同時に生成されることに注意してください。matplotlib のものは、次を使用して作成されます。
plt.show()
その後、手動で保存します。
mpld3 のものは次を使用して作成されます。
graph_data = json.dumps(fig_to_dict(fig))
次に、 をgraph_data
使用してクライアント側で生成されますmpld3.js
。これは、注釈を使用する場合を除き、完全に正常に機能します。
なぜこのように振る舞うのか分かりますか?最終的には、matplotlib から直接生成された画像を表示するだけで済みましたが、インタラクティブなグラフがあることは素晴らしいボーナスです。