Main Content

本页翻译不是最新的。点击此处可查看最新英文版本。

streamparticles

绘制流粒子

  • Plot stream particles

语法

streamparticles(vertices)
streamparticles(vertices,n)
streamparticles(...,'PropertyName',PropertyValue,...)
streamparticles(ax,...)
streamparticles(line_handle,...)
h = streamparticles(...)

说明

streamparticles(vertices) 绘制一个向量场的流粒子。流粒子通常由标记表示,可以显示流线图的位置和速度。vertices 是一个二维或三维顶点元胞数组(就像由 stream2stream3 生成一样)。

streamparticles(vertices,n) 使用 n 确定可以绘制多少流粒子。ParticleAlignment 属性控制如何解释 n

  • 如果 ParticleAlignment 设置为 off(默认值),并且 n 大于 1,则将在流线图顶点上等间距绘制大约 n 个粒子。

    如果 n 小于或等于 1n 将解释为原始流线图顶点的一部分;例如,如果 n0.2,则将使用大约 20% 的顶点。

    n 确定所绘制的粒子数的上限。实际粒子数与 n 的偏差最多可达 2n 倍。

  • 如果 ParticleAlignmentonn 确定具有最多顶点的流线上的粒子数,并按此值设置其他流线图上的间距。默认值为 n = 1

streamparticles(...,'PropertyName',PropertyValue,...) 使用所命名的属性和指定的值控制流粒子。任何未指定的属性都使用默认值。MATLAB® 将忽略属性名称的大小写。

streamparticles(ax,...) 将在由 ax 指定的坐标区中,而不是在当前坐标区 (gca) 中创建流粒子。选项 ax 可以位于前面的语法中的任何输入参数组合之前。

流粒子属性

Animate - 流粒子运动 [非负整数]

设置流粒子动画运动的次数。默认值为 0,表示不做动画运动。Inf 表示一直做动画运动,直至您输入 Ctrl+C 为止。

FrameRate - 动画的每秒帧数 [非负整数]

此属性指定动画的每秒帧数。默认值 Inf 表示以尽可能快的速度绘制动画。请注意,动画速度可能会受到计算机速度的限制。在这种情况下,不一定能实现 FrameRate 的值。

ParticleAlignment - 使粒子与流线图对齐 [ on | {off} ]

将此属性设置为 on 可在每个流线图的开始位置绘制粒子。此属性控制 streamparticles 如何解释参数 n(流粒子数)。

流粒子为基本线条对象。除了流粒子属性,还可以指定任何线条属性,例如 Marker。调用 streamparticles 时会设置以下线条属性。

线条属性

streamparticles 设置值

LineStyle'none'
Marker'o'
MarkerEdgeColor'none'
MarkerFaceColor'red'

您可以将属性名称和值指定为 streamparticles 的参数来覆盖上述任何属性。例如,此语句使用 RGB 值将 MarkerFaceColor 设置为中度灰:

streamparticles(vertices,'MarkerFaceColor',[.5 .5 .5])

streamparticles(line_handle,...) 使用 line_handle 确定的线条对象来绘制流粒子。

h = streamparticles(...) 返回其创建的基本线条对象的句柄向量。有关属性列表,请参阅 Line 属性

示例

全部折叠

此示例使用 z = 5 平面中的流线图通过流粒子来生成沿这些线条的流动画。

load wind
figure
daspect([1,1,1]); 
view(2)
[verts,averts] = streamslice(x,y,z,u,v,w,[],[],5); 
sl = streamline([verts averts]);
axis tight manual off;
set(sl,'Visible','off')
iverts = interpstreamspeed(x,y,z,u,v,w,verts,.05);
zlim([4.9,5.1]);
streamparticles(iverts, 200, ...
    'Animate',15,'FrameRate',40, ...
    'MarkerSize',10,'MarkerFaceColor',[0 .5 0])

扩展功能

版本历史记录

在 R2006a 之前推出