pyython 2.7で大きなデータをプロッティングするときに問題が発生しました。大きな配列をプロットするときにメモリエラーが発生する
X、Y、Zは配列の長さが約560,000 ...たくさんあります!
# ======
## plot:
fig = plt.figure("Map 3D couleurs")
ax = fig.add_subplot(111, projection='3d')
surf = ax.plot_trisurf(Xs, Ys, Zs, cmap=cm.jet, linewidth=0)
fig.colorbar(surf)
ax.set_xlabel("X")
ax.set_ylabel("Y")
ax.set_zlabel("Z")
ax.set_title("Map 3D couleurs")
#ax.xaxis.set_major_locator(MaxNLocator(5))
#ax.yaxis.set_major_locator(MaxNLocator(6))
#ax.zaxis.set_major_locator(MaxNLocator(5))
fig.tight_layout()
plt.show();
Pythonはこれを返信:
Traceback (most recent call last):
File "C:\Python27\lib\site-packages\matplotlib\backends\backend_qt5.py", line 427, in idle_draw
self.draw()
File "C:\Python27\lib\site-packages\matplotlib\backends\backend_qt5agg.py", line 148, in draw
FigureCanvasAgg.draw(self)
File "C:\Python27\lib\site-packages\matplotlib\backends\backend_agg.py", line 469, in draw
self.figure.draw(self.renderer)
File "C:\Python27\lib\site-packages\matplotlib\artist.py", line 59, in draw_wrapper
draw(artist, renderer, *args, **kwargs)
File "C:\Python27\lib\site-packages\matplotlib\figure.py", line 1085, in draw
func(*args)
File "C:\Python27\lib\site-packages\mpl_toolkits\mplot3d\axes3d.py", line 254, in draw
for col in self.collections]
File "C:\Python27\lib\site-packages\mpl_toolkits\mplot3d\art3d.py", line 580, in do_3d_projection
PolyCollection.set_verts(self, segments_2d)
File "C:\Python27\lib\site-packages\matplotlib\collections.py", line 842, in set_verts
self._paths.append(mpath.Path(xy, codes))
MemoryError
あなたは、Python 2.7でこの問題を解決するためのアイデアを持っていますか。 他のライブラリ、関数、またはPythonを使用して停止することがありますか?一部のファイルを読むためのライン でちょうど1データムを置く例えば一度 でデータを設定しない
、良いアイデアだ –
を、あなたはそれを簡単にプロットすることができライブラリ/機能を知っていますか:ない場合は、簡単に、たとえば使用して、アレイのサブサンプルだろうか? グラフィックカードに問題がありますか? –
Python用の他のプロットライブラリはたくさんありませんので、私は言及したサブサンプリングのような単純化を適用することになります。 50万個のデータポイントからサーフェスプロットを作成するのは単純に高価です。 – Bart