【问题标题】:Creating spheres In Matlab that change surface color depending on data在 Matlab 中创建根据数据改变表面颜色的球体
【发布时间】:2023-03-23 23:04:01
【问题描述】:

我正在尝试在 Matlab 中创建一系列随机分布的球体,三个将是三个子集。我希望每个子集都有不同的颜色。我正在使用一个结构,因为每个球体也将具有与之相关的不同属性。我尝试使用颜色图和 set(...'FaceColor'..) 但遇到了一些困难。请帮忙。

for n = 1:100
    Bslice.cell(n).index = n; 
    Bslice.cell(n).type = 'Tyep1'; % Type2, Type3
    Bslice.cell(n).location = round(rand(1, 3)*10);
end 

%%
[x,y,z] = sphere;

for n = 1:10
    hold on 
    grid on
    surfl(x-Bslice.cell(n).location(1), y-Bslice.cell(n).location(2), z-Bslice.cell(n).location(3)); 
    shading interp
    % colormap(hot(100))
end

【问题讨论】:

  • 用另一种方式来表达您的问题 - 我如何制作三个 3D 集群?

标签: matlab colors matlab-figure geometry-surface


【解决方案1】:

创建一个矩阵c,对应球体上每个点的颜色。那么,

[x y z] = sphere;
surf(x,y,z,c);

更多关于surf here的文档。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-13
    • 1970-01-01
    • 2017-01-25
    • 2013-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多