matplotlib を使用して、シミュレーションの結果で 3D ヒートマップをプロットしようとしています。このトピックを読み、 imshow を使用しようとしました。残念ながら、図を SVG または EPS 形式で保存すると、ヒートマットが画像に変換されます (これはジャーナルには受け入れられません)。だから、私も hexbin を試しましたが、画像はとても奇妙です。ジャーナルに受理されるかどうかはわかりません。他に何かありますか、それともヒートマットを長方形で埋める必要がありますか?
たとえば、次のコードを実行すると:
import numpy as np
import numpy.random
import matplotlib.pyplot as plt
# Generate some test data
x = np.random.randn(8873)
y = np.random.randn(8873)
heatmap, xedges, yedges = np.histogram2d(x, y, bins=50)
extent = [xedges[0], xedges[-1], yedges[0], yedges[-1]]
print extent
print heatmap
plt.clf()
surf = plt.imshow(heatmap, extent=extent)
plt.colorbar(surf, shrink=0.75, aspect=5)
plt.show()
SVGファイルを保存すると、PNG画像が含まれます:
<g clip-path="url(#p6def4f5150)">
<image height="347" width="315" x="115.127800906" xlink:href="data:image/png;base64,
私は OpenSUSE と Ubuntu OS で matplotlib バージョン 1.1.1 を使用しています。