SciPy + matplotlib로 3D 산점도 작성 (Python)
8048 단어 파이썬scipymatplotlib
샘플 데이터는 iris.csv 사용 ( h tp ///아마. cs. 베르케 y. 에즈/다타/이리 s. CSV )
(5/9 추기)plot 메소드에서는 데이터의 읽어들여 순서에 플롯이 덧쓰기되어 가므로, 플롯이 겹쳤을 때에 입체적인 전후 관계가 이상해집니다. scatter 메소드는 처리가 무겁고, 그래프의 회전 조작에 어려움이 있습니다만, 입체적인 전후 관계는 보다 정확합니다.
(5/10추기) 입체적인 겹침이 이상한 것은 scatter도 마찬가지였습니다. 아무래도 matplotlib의 미해결 문제 인 것 같습니다. 깨끗한 3D 그래프 쓰고 싶은 사람은 MayaVi를 사용할 수 있다는 것.
ht tp // // tp t t b. rg / mpl_와 t / mp t3d / fuq. HTML
plot3d.py
# coding: UTF-8
from matplotlib import pyplot
from mpl_toolkits.mplot3d import Axes3D
from scipy import genfromtxt
# ファイル読み込み
d = genfromtxt("./temp/iris.csv", delimiter=",")
# グラフ作成
fig = pyplot.figure()
ax = Axes3D(fig)
# 軸ラベルの設定
ax.set_xlabel("X-axis")
ax.set_ylabel("Y-axis")
ax.set_zlabel("Z-axis")
# 表示範囲の設定
ax.set_xlim(4, 8)
ax.set_ylim(2, 5)
ax.set_zlim(1, 8)
# 抽出条件設定
d1 = d[d[:,0] >= 7]
d2 = d[(d[:,0] < 7) & ((d[:,1] > 3) & (d[:,1] <= 3.5))]
d3 = d[(d[:,0] < 7) & ((d[:,1] <= 3) | (d[:,1] > 3.5))]
# グラフ描画
ax.plot(d1[:,0], d1[:,1], d1[:,2], "o", color="#cccccc", ms=4, mew=0.5)
ax.plot(d2[:,0], d2[:,1], d2[:,2], "o", color="#00cccc", ms=4, mew=0.5)
ax.plot(d3[:,0], d3[:,1], d3[:,2], "o", color="#ff0000", ms=4, mew=0.5)
pyplot.show()
출력 결과
다른 창이 열리고 그래프가 표시됩니다.
그래프는 드래그로 자유롭게 회전할 수 있습니다.
메뉴바의 save 아이콘으로 아래와 같은 PNG 파일을 출력할 수 있습니다.
Reference
이 문제에 관하여(SciPy + matplotlib로 3D 산점도 작성 (Python)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/mojaie/items/c993fbb3aa63d0001c1c
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(SciPy + matplotlib로 3D 산점도 작성 (Python)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/mojaie/items/c993fbb3aa63d0001c1c텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)