Plotlyを使用してipython notebookで動く3Dの可視化をする方法をメモ.
plotlyに渡す時は、pandaのdata frame形式にしておく必要があるので、
その部分さえ対応すればすぐできる
そもそもはGoogle Colabratoryでmatplotlibでplotすると3Dが触れないのが気になって、対応方法を探していたら、たどり着いた.

numpyの3次元のデータと1次元のラベルを持っているなら、下記のようにすればOK. x_testは(1000, 3 )のnumpy array配列, y_testは(1000,)のnumpy array配列.
全体で書いたコードは以下のような感じ.
MNISTのデータを3次元にt-SNEで次元圧縮して触れる3D表示
以下では
- MNISTのデータを読み込んで整形. 最初の1000個までを使用.
- t-SNEを使って784次元を3次元まで次元圧縮
- 最後にそれらを使って3D表示.(グリグリ触れます)