我是初学者,正在尝试在MATLAB App Designer中使用polarplot
和hold on/off
。现在要在应用程序设计器中使用它,我们需要通过调用应用程序设计器面板容器中的polaraxes
函数来创建极轴。
我尝试了一下,它工作正常,没有任何错误:
pax = polaraxes(app.Panel);
polarplot(pax,th1,r1,'red')
hold(app.UIFigure.CurrentAxes,'on'); % warning
polarplot(pax,th2,r2,'green')
hold(app.UIFigure.CurrentAxes,'off'); % warning
但由于应用程序编码警报,我收到了保留行的警告"Specify a UIAxes handle as first argument“。如何解决此警告?这是为面板容器使用hold on/off
的正确方式吗?
发布于 2021-09-07 06:52:52
在MATLAB Answers上也回答了类似的问题。
这只是一个来自代码分析器的警告,并不一定是您的代码有什么特别的错误。你得到这个警告是因为当使用App Designer时,它期望你使用的是一个UIAxes
而不是一个标准的Axes
对象。你真的可以忽略这个警告。
发布于 2020-11-02 11:19:32
我没有经常使用appdesigner,但我怀疑是因为CurrentAxes变量是空的,所以你会得到一个警告,所以你可以尝试指定要保存的轴:
pax = polaraxes(app.Panel);
polarplot(pax,th,r1,'red')
hold(pax,'on');
polarplot(pax,r2,'green')
hold(pax,'off');
或者这可能会起作用(未经测试,如果有,也不建议这样做,总是建议传递您想要持有的实际轴句柄,而不是Matlab认为处于活动状态的轴句柄)
pax = polaraxes(app.Panel);
polarplot(pax,th,r1,'red')
drawnow()
hold(app.UIFigure.CurrentAxes,'on'); % warning
polarplot(pax,r2,'green')
hold(app.UIFigure.CurrentAxes,'off'); % warning
https://stackoverflow.com/questions/64643641
复制相似问题