Python と MatPlot3D の初心者。いくつかの属性に応じて異なる形状と色を使用して座標を表示したいプロットがあります。データはこんな感じ。
col1 col2 col3 col4 col5
276 147 -6 K dia
274 145 -8 A cir
270 141 -12 B dia
267 138 -15 K cir
266 137 -16 K cir
261 132 -21 B bu
251 122 -31 C cir
次に、col4 に基づいて形状を変更し、col5 に基づいて形状の色を変更したいと思います。今のところ、ファイルからデータ ポイントを読み取り、ポイントのみをプロットするこのコードがあります。
from mpl_toolkits.mplot3d import Axes3D
from matplotlib import cm
import matplotlib.pyplot as plt
from matplotlib.mlab import griddata
import numpy as np
fig = plt.figure()
ax = fig.add_subplot(111,projection='3d')
data = np.genfromtxt('distances.txt')
x = data[:,0]
y = data[:,1]
z = data[:,3]
ax.scatter(x, y, z,c='red',marker='^')
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('Z')
plt.show()
col4 と col5 の値に応じて形状と色を簡単に指定するにはどうすればよいですか?