在同一GUI窗口的两个不同轴上绘制2个图

时间:2017-07-13 08:11:38

标签: matlab plot matlab-guide multiple-axes

我正在尝试在具有2个不同轴的同一GUI图中制作两个图。我想在一个轴上绘制一个绘图,而在另一个轴上绘制下一个绘图。但是,我的两个图都是从单个函数生成的,我用GUI按钮调用它。

当我在函数内的第二个绘图之前写/src/app/controllers/other/security.html时,我得到一个错位的第三个轴。如果我省略axes()调用,我会在同一轴上得到两个图。如何在第二个轴上绘制第二个图形?

GUI

axes()

功能

function pushbutton1_Callback(hObject, eventdata, handles)
---------
---------
---------
axes(handles.axes1);
     kendrickplot(n,alpha,em,infile,outfile);
---------

1 个答案:

答案 0 :(得分:3)

一种方法是将轴的手柄传递给执行绘图的功能。

  1. 修改你的函数以接受绘图句柄:

    function [ynew,xnew]=kendrickplot(n,alpha,em,infile,outfile, h1, h2)

  2. 在函数内部,在第一个绘图之前添加axes(h1),在第二个绘图之前添加axes(h2)

  3. 在您的回调中,调用此函数kendrickplot(n,alpha,em,infile,outfile, handles.axes1, handles.axes2);