【问题标题】:Random layered non-overlapping scatter plot in MATLABMATLAB中的随机分层非重叠散点图
【发布时间】:2017-10-28 11:43:02
【问题描述】:

我正在使用scatterplothold on 函数连续绘制(例如三个)不同的数据集。这会生成一个散点图,其中最后一层与所有其他层重叠。 是否有(绘图)功能可以随机分散图层?

【问题讨论】:

标签: matlab plot data-visualization scatter-plot


【解决方案1】:

实现此目的的一种方法是通过 3d 绘图。

使用随机数创建与 x 和 y 向量长度相同的深度向量,并使用 plot3(而不是 plot)绘图。

然后您可以使用命令 view(2) 来更改您将获得您想要的效果的视点。

示例

f1=figure;
f2=figure;
nValues = 2000;
for dataSet=1:3
    r1 = rand(nValues,1);    
    r2 = rand(nValues,1);    
    r3 = rand(nValues,1);
    t = r1 * pi * 2;
    x = r2 .* cos(t) + r1(1);
    y = r2 .* sin(t) + r2(1);
    depth = r3;
    set(0,'CurrentFigure',f1)
    plot(x,y,'.', 'MarkerSize',25)    
    hold all

    set(0,'CurrentFigure',f2)
    plot3(x,y,depth,'.', 'MarkerSize',25)    
    hold all
end
% Change viewpoint 
view(2)

使用 plot 命令绘制的数据(不同的图层)

使用 z(深度)的随机值通过 plot3 命令绘制的数据

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-20
    • 1970-01-01
    • 2022-10-08
    • 1970-01-01
    • 2013-02-12
    • 2013-12-17
    • 1970-01-01
    相关资源
    最近更新 更多