#動機
matplotlibの三次元プロットで複数axisを生成する方法が目に入ったのでコードを書いてみた。
#作図してみた
##環境
Anacondaのjupyter labを使用。
##データの読み込み
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
from scipy import genfromtxt
import numpy as np
import pandas as pd
import os
d = pd.read_csv("./3d_scatter_plot_data.csv")
#相対パスでは.が現在のパスを明示的に示す方法。 ..で、一つ上の階層を示すなどが使える。
d #データの確認
今回使用したデータは、工場で生産された製品に、色のバラツキが発生していないか、Lot毎に測色した結果を用いた。測色の評価方法については、ココを参照。
##3D散布図の作成
#データをarray型に
x = np.array(d["a"])
y = np.array(d["b"])
z = np.array(d["L"])
# グラフ作成
fig = plt.figure()
ax = Axes3D(fig)
ax.scatter(x, y, z)
# 軸ラベルの設定
ax.set_xlabel("a-value")
ax.set_ylabel("b-value")
ax.set_zlabel("L-value")
plt.show()
作図に成功したが...本来はグラフをマウスでドラッグするとグラフが回転してくれるそうだが微動だにしない。
jupyter labでは上手く動かないのかもしれない...