3D散布図を作成し、シンボルを色分けしようとしています。RGBカラーがによって定義されている場合nan
、ポイントが黒でプロットされるのはなぜですか?この式は大丈夫です:
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
carr = np.array([[0,0,0,1],[0,0,1,1],[0,1,0,1]]) # RGBA color array
ax = plt.axes(projection='3d')
h = ax.scatter([1,2,3],[1,2,3],[1,2,3],
c=carr)
plt.draw()
nanを使用した新しいカラー配列:
carr = np.array([[0,0,0,1],np.repeat(np.nan,4),[0,1,0,1]])
ax = plt.axes(projection='3d')
h = ax.scatter([1,2,3],[1,2,3],[1,2,3],
c=carr)
plt.draw()
色が定義されているポイントはnan
、何もない色や他の色ではなく、黒で表示されます。表示されないようにする方法はありますか?Rでは、色が定義されているポイントNA
はプロットされません。これは、論理式で色を指定する場合に便利です。
もちろん...私はいつでもプロットのために配列をサブセット化することができますが、色の定義でそれを除外することができれば、それはより良いでしょう。
ちなみに、なぜ
carr[1:] = np.nan
carr
私に与えるの最初の定義の後
array([[ 0, 0, 0,
1],
[-9223372036854775808, -9223372036854775808, -9223372036854775808,
-9223372036854775808],
[ 0, 1, 0,
1]])
それ以外の
array([[ 0., 0., 0., 1.],
[ nan, nan, nan, nan],
[ 0., 1., 0., 1.]])