繁体   English   中英

Matlab中的3D RGB图

[英]3D RGB plot in Matlab

我有一个3乘4的矩阵,其中每列有特定颜色的3个分量R,G和B. 我需要将3D绘图中的每个组件绘制为单个点,并且如果可能的话,使用与其对应的RGB组件的颜色绘制每个点。

我已尝试使用plot3函数,但它描绘了一条连续的线条,它只有一种颜色。

例如,这是我的矩阵:

centroids = 

47    85   104   126   
37    66    86   103   
36    55    71    90

其中(47,37,36)是第一个点的RGB坐标,因此我需要将其绘制为RGB空间中的单个点并使用此特定颜色。 我的想法是有这样的for循环:

for i = 1:4
    plot3( centroids(1,i),centroids(2,i),centroids(3,i),'Color',centroids(:,i))
end

但它给了我一个错误,我不会尝试改变颜色,它只绘制一条线并使用相同的颜色。 有没有办法将矩阵的每一列绘制为独立点并使用RGB组件的颜色?

您应该使用scatter3函数。 这是一个包含数据的示例,假设它包含在一个名为A的数组中:

scatter3(A(1,:), A(2,:), A(3,:), 50, (A/255)', 'filled')

结果:

结果

最好,

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM