在App Designer中显示图形需要一个不同于通常在MATLAB中使用的工作流®命令行。一旦您理解了这个工作流和一些特殊的情况,您将知道如何调用显示几乎任何类型的绘图所需要的函数。
MATLAB中的许多图形函数(和MATLAB工具箱)都有一个参数用于指定目标轴或父对象。这个参数在大多数上下文中是可选的,但是当你在App Designer中调用这些函数时,你必须指定这个参数。否则,MATLAB使用GCF
或GCA
以获取操作的目标对象。然而,GCF
无法返回应用程序设计器图形,并且GCA
无法返回应用程序设计器图形中的任何轴。因此,省略这个论证可能会产生意想不到的结果。
此代码表示描绘两行的时候如何指定目标轴。第一个参数传递给情节
和保持
是app.UIAxes
,这是App Designer坐标轴的默认名称。
情节(app.UIAxes,[1 2 3 4],“- r”);保持(app.UIAxes);情节(app.UIAxes,[10 9 4 7],'--b');
一些功能(例如imshow
和triplot
)使用一个名称 - 值对参数来指定目标对象。例如,下面的代码演示了如何调用imshow
功能应用设计。
imshow(“peppers.png”,“父”,app.UIAxes);
您可以创建使用App设计轴大多数2-d和3 d地块(一uiaxes
宾语)。在R2018b开始,您可以创建其他情节,如在下表中列出。大多数这些地块都需要在你的应用不同类型的父对象和代码的其他行。他们都默认使用归一化单位。
功能 | 编码的细节 |
---|---|
polarplot polarhistogram polarscatter 指南针 |
通过调用。来创建极轴 θ= 0:0.01:2 *π;ρ=罪(2 *θ)。* cosθ(2 *);罗马帝国= polaraxes (app.Panel);polarplot(罗马帝国,θ,ρ) 或者,用类似的方法创建一个指南针图: RNG(0,“扭腰”)M = randn(20,20);Z = EIG(M);app.Axes =轴(app.Panel);罗盘(app.Axes,Z)
|
次要情节 |
按着这些次序:
例如: app.UIFigure.AutoResizeChildren =“关闭”;AX1 =副区(1,2,1,“父”,app.UIFigure);AX2 =副区(1,2,2,“父”,app.UIFigure);情节(AX1,[1 2 3 4])曲线图(AX2,[10 9 4 7]) |
tiledlayout |
在面板创建平铺图表布局和使用它的在创建轴 T = tiledlayout(app.Panel,2,1);[X,Y,Z] =峰(20)%瓷砖1ax1 = nexttile(t) surf(ax1,X,Y,Z)%瓷砖2ax2 = nexttile(t)轮廓线(ax2,X,Y,Z) |
帕累托 plotmatrix |
按着这些次序:
例如: app.UIFigure.AutoResizeChildren =“关闭”;AX =轴(app.UIFigure);帕累托(AX,[10 20 40 40])
|
geobubble 热图 parallelplot scatterhistogram stackedplot wordcloud |
在调用这些函数时指定父容器(例如, 例如: H =热图(app.UIFigure,兰特(10)); |
geoplot geoscatter geodensityplot |
通过调用创建地理坐标轴 latSeattle = 47 + 37/60;lonSeattle = - (122 + 20/60);GX = geoaxes(app.UIFigure);geoplot(GX,latSeattle,lonSeattle) |
作为R2019b的,一些图形功能在应用设计支持。万博1manbetx下表列出了相关的大多数应用程序建立工作流的功能。
类别 | 不支持万博1manbetx |
---|---|
动画 | |
注释 |
|
检索和保存数据 |
以编程方式创建的图形 |
公用事业公司 | |
功能不推荐 | |
网格布局管理器或可滚动容器中的轴 |
解决方法:
|
组件 |
|
属性 |
|