概述
背景:小白在使用他人源码时,对MATLAB中的函数不熟悉,运行成功后发现plot绘图无法直接弹窗显示,只能在工具栏的预览显示。
为了解决此问题对绘图部分所有函数都进行了仔细调试,终于发现问题出在set函数上,下面给出了解决办法。
set函数在官方帮助中心已经很明了,这里仅解释问题部分
链接: MATLAB帮助文档 set函数.
笔者所用MATLAB源码版本R2016b,原文如下
// 这里只写了起作用的部分代码。
figure()
set(gcf,'units','normalized','outerposition',[1 0 1 1]);
clf;
hold on;
set函数参数:
gcf::返回当前图窗的句柄。如果图窗不存在,则 gcf 将创建一个图窗并返回其句柄。可以使用图窗句柄查询和修改图窗的属性当前图形
Units:有效值为pixels/normalized/inches/centimeters/points/characters
决定各种位置属性的度量单位,相对于窗口左下角为基准。当设置为Pixels时,以像素为单位;当设置为normalized时,以坐标为单位,屏幕的左下角为[0,0],右上角为[1,1]。
Outerposition:决定坐标轴外边界的位置。由位置向量[left,bottom,width,height]组成,其中left,bottom表示相对于绘图窗口左下角的位置,width,height表示区域尺寸,默认为[0 0 1 1]
Position:由位置向量[left,bottom,width,height]组成,决定坐标轴位置
问题就出现在这里
默认起始位置为[0,0,1,1],但是作者将其设置为了[1,0,1,1],所以导致plot绘图只能在左下角预览中显示,如下修改后,成功弹窗全屏显示。
//修改为
set(gcf,'units','normalized','outerposition',[0 0 1 1]);
// 甚至可以试试这样。
set(gcf,'units','normalized','outerposition',[0 0 20 10]);
参考大佬链接: matlab set函数.
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_42141088/article/details/115564155
最后
以上就是感动夕阳为你收集整理的plot绘图只能在工具栏的预览显示,无法全屏弹窗显示---matlab 不学无术小问题背景:小白在使用他人源码时,对MATLAB中的函数不熟悉,运行成功后发现plot绘图无法直接弹窗显示,只能在工具栏的预览显示。的全部内容,希望文章能够帮你解决plot绘图只能在工具栏的预览显示,无法全屏弹窗显示---matlab 不学无术小问题背景:小白在使用他人源码时,对MATLAB中的函数不熟悉,运行成功后发现plot绘图无法直接弹窗显示,只能在工具栏的预览显示。所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复