matlab如何在指定axes上作图

一般的方法是利用axes(handles.axes)实现但我的作图程序不在gui的主程序中,是调用其他函数实现的。handles.axes在该调用函数中似乎无法传值进去这... 一般的方法是利用axes(handles.axes)实现
但我的作图程序不在gui的主程序中,是调用其他函数实现的。handles.axes在该调用函数中似乎无法传值进去 这时该怎么办呢~
展开
 我来答
day忘不掉的痛
2015-08-12 · 知道合伙人数码行家
day忘不掉的痛
知道合伙人数码行家
采纳数:62646 获赞数:223931
本人担任公司网络部总经理多年,有充足的网络经验、互联网相关知识和资讯。

向TA提问 私信TA
展开全部

方法如下:

创建一个GUI

画好了就如下图。

直接放代码了:

重点处加粗了。

% --- Executes on button press in pushbutton2.

function pushbutton1_Callback(hObject, eventdata, handles)

% hObject    handle to pushbutton2 (see GCBO)

% eventdata  reserved - to be defined in a future version of MATLAB

% handles    structure with handles and user data (see GUIDATA)

t = -5:.1:5;

y = sinc(t);

plot(handles.axes1,t,y,'gd');

legend(handles.axes1,'sin(x)/x');

% --- Executes on button press in pushbutton1.

function pushbutton2_Callback(hObject, eventdata, handles)

% hObject    handle to pushbutton1 (see GCBO)

% eventdata  reserved - to be defined in a future version of MATLAB

% handles    structure with handles and user data (see GUIDATA)

t = 1:.1:10;

x = sin(t);

y = cos(t);

plot3(handles.axes2,t,x,y,'r*');

legend(handles.axes2,'t-x-y');

3

plot(handles.axes1,t,y,'gd');

plot3(handles.axes2,t,x,y,'r*');

关键的就是这两句了,其它情况也是类似的。

结果就如下了

dukinkin
2014-05-31 · TA获得超过1.3万个赞
知道大有可为答主
回答量:2444
采纳率:90%
帮助的人:889万
展开全部
修改你的作图程序,增加一个输入参数,将axes的句柄传递给函数

或者在调用作图函数之前将用set函数将gca(当前激活的axes)设为你想要的axes句柄
再调用左图函数,而你的作图函数应该指定在gca中画图
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式