在matlab上用向量绘制坐标
Plotting coordinates with vectors on matlab
我有两个向量 x
和 y
。
我想将它们都绘制为坐标,例如:(x1,y1) ; (x2,y2)
,每个点用一个点表示。我不知道该怎么做。
我尝试使用 meshgrid
函数,但没有成功。
如果您打算将它们绘制为来自原点的向量,MATLAB 的 plotv
函数(神经网络工具箱附带)可以让您做到这一点。
以下应该有效:
M = [x1 x2 ; ...
y1 y2];
plotv(M)
您可以在 MATLAB plotv page 找到文档。
但是,如果您只想绘制点,则可以使用散点图。您可以使用以下内容:
X = [x1 x2];
Y = [y1 y2];
scatter(X, Y)
散点图的文档可以在 MATLAB scatter page 找到。
如果您打算绘制从 (x1, y1) 到 (x2, y2) 的向量,以下使用 MATLAB 的 quiver
函数应该会有所帮助:
quiver(x1,y1,(x2 - x1),(y2 - y1),0)
请在 this page 上查找 quiver
的文档。在我讨论的示例中,0
用于关闭自动缩放。
您可能想看看 File Exchange 上 Paul Mennen 的 plt
包裹。
这包括一个辅助函数 Pquiv
(已记录 here),它允许绘制矢量。
示例图片位于 this 位置,该图的源代码作为 'demo' 文件之一提供。
这个项目的文档非常好,虽然我还在努力适应设置,但它确实有助于解决 Matlab 中的许多绘图相关问题。
作者(使用 help plt
安装后可用的电子邮件地址)也能快速回复人们提出的问题,其中一些问题也可以在 File Exchange 的评论中看到。
为什么这不起作用?
plot(x,y,'o','MarkerFaceColor','b'); axis square; hold on
最佳
我有两个向量 x
和 y
。
我想将它们都绘制为坐标,例如:(x1,y1) ; (x2,y2)
,每个点用一个点表示。我不知道该怎么做。
我尝试使用 meshgrid
函数,但没有成功。
如果您打算将它们绘制为来自原点的向量,MATLAB 的 plotv
函数(神经网络工具箱附带)可以让您做到这一点。
以下应该有效:
M = [x1 x2 ; ...
y1 y2];
plotv(M)
您可以在 MATLAB plotv page 找到文档。
但是,如果您只想绘制点,则可以使用散点图。您可以使用以下内容:
X = [x1 x2];
Y = [y1 y2];
scatter(X, Y)
散点图的文档可以在 MATLAB scatter page 找到。
如果您打算绘制从 (x1, y1) 到 (x2, y2) 的向量,以下使用 MATLAB 的 quiver
函数应该会有所帮助:
quiver(x1,y1,(x2 - x1),(y2 - y1),0)
请在 this page 上查找 quiver
的文档。在我讨论的示例中,0
用于关闭自动缩放。
您可能想看看 File Exchange 上 Paul Mennen 的 plt
包裹。
这包括一个辅助函数 Pquiv
(已记录 here),它允许绘制矢量。
示例图片位于 this 位置,该图的源代码作为 'demo' 文件之一提供。
这个项目的文档非常好,虽然我还在努力适应设置,但它确实有助于解决 Matlab 中的许多绘图相关问题。
作者(使用 help plt
安装后可用的电子邮件地址)也能快速回复人们提出的问题,其中一些问题也可以在 File Exchange 的评论中看到。
为什么这不起作用?
plot(x,y,'o','MarkerFaceColor','b'); axis square; hold on
最佳