MATLAB图 - 在绘图之前过滤数据

Joh*_*nyF 0 matlab figure matlab-figure

我有一个90x2矩阵a,其中a(:,1)是x,而a(:,2)是y.

我想只绘制y大于BOOM的值.我怎样才能做到这一点?

目前我有

plot(a(:,1),a(:,2));
Run Code Online (Sandbox Code Playgroud)

还有一件事,我怎样才能完整显示数字num*10^4呢?

xen*_*ast 5

标准方法是制作面具find.你会先做到这一点

mask = find(a(:,2) > BOOM);
Run Code Online (Sandbox Code Playgroud)

掩码将是第二列超过BOOM阈值的索引位置列表.您可以使用它来仅选择行排序中的条目

plot(a(mask,1), a(mask,2))
Run Code Online (Sandbox Code Playgroud)

你也可以制作一个逻辑蒙版,它的工作方式大致相同,有时更方便.

至于显示器,你可以尝试

format short
Run Code Online (Sandbox Code Playgroud)