3D プロットに色のグラデーションを追加できるようにする matlab スクリプトを作成しようとしています。次のテストを実行しています。
関数ハンドル = colored_line_3d(x, y, z, c)
handle = surface( [x(:), x(:)], [y(:), y(:)],[z(:), z(:)],[c(:), c(:)], 'EdgeColor', 'flat', 'FaceColor', 'none' ); end
x = [1; 2; 3]
y = [1; 2; 3]
z = [1; 2; 3]
c = [1 2 3]
これを実行すると、次の警告が表示されます。
coloured_line_3d(x,y,z,c)
ans =
0.0029
Warning: size(CData) must equal size(ZData) or size(ZData)-1 for flat shading
Warning: size(CData) must equal size(ZData) or size(ZData)-1 for flat shading
Warning: size(CData) must equal size(ZData) or size(ZData)-1 for flat shading
Warning: size(CData) must equal size(ZData) or size(ZData)-1 for flat shading
空のプロットが得られます。
これの何が問題なのですか?