matlab如何在指定axes上作图
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab如何在指定axes上作图相关的知识,希望对你有一定的参考价值。
一般的方法是利用axes(handles.axes)实现
但我的作图程序不在gui的主程序中,是调用其他函数实现的。handles.axes在该调用函数中似乎无法传值进去 这时该怎么办呢~
方法如下:
创建一个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*\');
关键的就是这两句了,其它情况也是类似的。
结果就如下了
参考技术A 修改你的作图程序,增加一个输入参数,将axes的句柄传递给函数或者在调用作图函数之前将用set函数将gca(当前激活的axes)设为你想要的axes句柄
再调用左图函数,而你的作图函数应该指定在gca中画图本回答被提问者和网友采纳
R语言作图plot函数以及参数设置解析
参考技术A plot(x, y = NULL, type = "p", xlim = NULL, ylim = NULL, log = "", main = NULL, sub = NULL, xlab = NULL, ylab = NULL, ann = par("ann"), axes = TRUE, frame.plot = axes, panel.first = NULL, panel.last = NULL, asp = NA, xgap.axis = NA, ygap.axis = NA, ...)x,y 用于横纵坐标作图的数据对象。
type 图类型(线条和点类型),使用格式type=" "。
type="p"显示为空心点。plot
type="l"显示为线条。line
type="b"显示为空心点和线条。both
type="c"显示为无点和线条。
type="o"显示为空心点和线条,线穿过空心点。
type="s"/"S"显示为阶梯线。
type="h"显示为直方图样的垂直线。
type="n"显示为无点和无线条。
xlim/ylim 用于指定图的x轴和y轴的范围,使用格式:xlim=c(x1,x2), ylim=c(y1,y2)。
xlab/ylab 用于给图的x轴和y轴添加标签,使用格式:xlab="xlab",ylab="ylab"。
main 用于对plot添加主标题, main=" "。
sub 用于对plot添加副标题, sub=" "。
log 用于对x或者y值取log。log="x"/"y"/"xy"。
ann 使用T/F对plot中的标题,x轴标签,y轴标签是否显示进行定义。
axes 使用T/F对坐标轴是否显示进行定义。
frame.plot 使用T/F对画图外框是否显示进行定义。
panel.first 参数还没弄懂,panel.first="grid(8,8)"对背景线进行定义。
asp 表示y/x的纵横比。
lty 用于线条类型的定义,指定值为整数,lty="1"。
lty="0"显示为空白,即无线条。
lty="1"显示为实线线条。
lty="2"显示为虚线线条。
lty="3"显示为点状线条。
lty="4"显示为点虚线线条,点和虚线线条间隔。
lty="5"显示为长虚线。
lty="1"显示为双破折号线条。
以上是关于matlab如何在指定axes上作图的主要内容,如果未能解决你的问题,请参考以下文章