![]() |
MATLAB函数的图和线有何不同?
MATLAB中的函数plot和line之间有什么区别?他们在做同一件事吗?
[B]回答:[/B] 函数[URL="https://www.mathworks.com/help/matlab/ref/plot.html"]plot[/URL]和[URL="https://www.mathworks.com/help/matlab/ref/line.html"]line[/URL]几乎做同样的事情,但是plot是一个高级函数,可能与其他图形对象有更多的交互。可以在[URL="https://www.mathworks.com/help/matlab/creating_plots/role-of-graphics-objects.html#bucf5dn-3"]此处[/URL]找到高级功能和低级功能的简要概述。诸如plot类的高级功能可能会在内部调用诸如line类的原始函数来创建其图形,但是它们也可以修改其父[URL="https://www.mathworks.com/help/matlab/ref/axes.html"]轴[/URL]或[URL="https://www.mathworks.com/help/matlab/ref/figure.html"]图形的[/URL]属性或与之交互。从第[URL="https://www.mathworks.com/help/matlab/ref/line.html#bu748g2-5"]line[/URL]的文档中: [INDENT]与plot函数不同, line函数不会在绘制之前调用newplot ,并且不考虑图形或轴的NextPlot属性值。它只是将线添加到当前轴,而无需删除其他图形对象或重置轴属性。但是,某些轴属性(例如轴限制)可以更新以适应该线。 [/INDENT]例如,如果调用line函数: line('XData', x, 'YData', y, 'ZData', z, 'Color', 'r'); MATLAB使用指定的数据值在当前轴上绘制一条红线。如果没有轴,MATLAB将创建一个。如果没有在其中创建轴的图形窗口,MATLAB也会创建它。 如果第二次调用line函数,MATLAB会在当前轴上绘制第二条线,而不会擦除第一条线。此行为不同于删除绘图对象并重置所有轴属性(除了[URL="https://www.mathworks.com/help/matlab/ref/axes-properties.html#property_d0e56306"]Position[/URL]和[URL="https://www.mathworks.com/help/matlab/ref/axes-properties.html#property_d0e56630"]Units[/URL] )的plot等高级功能。您可以使用[URL="https://www.mathworks.com/help/matlab/ref/hold.html"]hold[/URL]命令或通过更改轴[URL="https://www.mathworks.com/help/matlab/ref/axes-properties.html#property_d0e55849"]NextPlot[/URL]属性的设置来更改高级功能的行为。 在plot和line功能也有所不同影响自动线着色,作为显示[URL="https://stackoverflow.com/q/45692196/52738"]在这里[/URL] 。 [url=https://stackoverflow.com/questions/2447127]更多&回答...[/url] |
所有时间均为北京时间。现在的时间是 18:59。 |
Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.