matlab - 从 MATLAB 绘图中删除点和线

标签 matlab plot line handle

我有一个用户可以点击进入的图形。点击的坐标将存储在两个向量 x 和 y 中。比起我通过 plot(x_new, y_new) 绘制新创建的点,还有一个上下文 me nu 正在为这个点创建,它有一个标签 delete point。当点击它,我只是删除了 xy 向量的相应值。

现在我需要以某种方式删除标绘点。目前我是这样做的:删除点时,我只需清除当前轴 cla 并立即重绘所有点。但不知何故,我觉得这不是最好的方法,因为我还想在用户输入的点之间显示文本和一些连接线,并且当所有内容每次都需要重绘时,它可能会变得非常慢......

所以我想知道最好的方法是什么? 简单地存储每个点的返回图句柄,而不是在删除点时删除这些对象会好吗?连接线和文本也一样吗?

谢谢!

最佳答案

您可以直接使用 XDataYData 属性操作一行的基础数据。

删除索引 idx 处的点:

XData = get(h_line, 'XData');
YData = get(h_line, 'YData');
XData(idx) = [];
YData(idx) = [];
set(h_line, 'XData', XData, 'YData', YData);

关于matlab - 从 MATLAB 绘图中删除点和线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8575071/

相关文章:

matlab - 将数学公式转换为 MATLAB 代码

matlab - 林空间与范围

r - 如何在R中的绘图中添加一条线

r - 在一行/网格中绘制不是使用 ggplot 创建的多个图

Vim:插入模式非常慢,有 400 多行

查找与 Ax+By+C=0 形式的给定直线垂直的直线的算法

svn - SVN 合并多列(制表符分隔)文本文件时遇到问题吗?

algorithm - 过滤电位计数据时出现问题(嘈杂、高尖峰)

matlab - 生成具有协方差矩阵的正态分布随机向量

matlab - Matlab中是否可以只排列图形的最大极限?