您当前的位置: 首页 >  matlab

wendy_ya

暂无认证

  • 2浏览

    0关注

    342博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

MATLAB遇到问题:绘图窗口显示中文乱码方框的解决方法

wendy_ya 发布时间:2020-11-29 13:41:43 ,浏览量:2

今天,在使用MATLAB绘图功能时发现无法显示中文,显示的全是方框乱码“口口口”,如下: 部分程序:

f=imread(image);%读取图像
f=imresize(f,[363,312]);%将图像调整为363*312
figure(1);imshow(f),title('原始图像');

输出结果: 在这里插入图片描述 可以看到,中文’原始图像’四个字变成四个方框进行输出了。那么这个问题如何解决呢?

解决方案:

首先说明几点不适用范围:

  1. 我正常在命令行窗口输入注释+中文是不出现方框乱码的,如果你出现,则该方法肯定不适合你,乖乖的去改一下预设里的字体设置吧~ 在这里插入图片描述

  2. 我在命令行中输入‘feature(‘locale’)’同样不出现中文乱码,如果你出现,则本文同样不适用,建议参考博客:https://www.cnblogs.com/leoking01/p/8269516.html 在这里插入图片描述

好了,接下来进入正文: 我试过很多办法,比如改字体啦,windos添加字体啦,等等等等,就是不好用。只有一种办法好用:

方法1:

在绘图命令后加一行命令,直接设置字体格式: 代码:

f=imread(image);%读取图像
f=imresize(f,[363,312]);%将图像调整为363*312
figure(1);imshow(f),title('原始图像'),set(gca,'FontName','Microsoft YaHei');

结果: 在这里插入图片描述 这时,我确信我的MATLAB版本肯定没问题,肯定能显示出中文,那问题自然就出现在绘图里的默认字体上。 打开该图像的属性编辑器,查看该字体默认为‘Helvetica’,且是无法默认修改的(即改完一次后还需要重新改,并不会默认记住)。 在这里插入图片描述 这显然不是我这种懒人的目标。 。。。 经过多方查阅资料发现一种方法:

方法2:

第一步:新建一个startup.m文件, 并保存。

function startup
%% Text Size
% set(0,'DefaultAxesFontsize',25);
% set(0,'DefaultTextFontsize',25);
% set(0,'DefaultAxesFontWeight','bold');
% set(0,'DefaultTextFontWeight','bold');

% %% Text Fonts
% % set(0,'DefaultTextFontname','Arial')
% % set(0,'DefaultAxesFontname','Arial')
set(0,'DefaultTextFontname','宋体')
set(0,'DefaultAxesFontname','宋体')
end

【注】:将字体大小及字体类型调整成自己喜欢的就好,我这里只修改了字体类型为宋体。

第二步:将该setup.m所在的文件夹添加到路径里。 在这里插入图片描述 我这里setup.m放在MATLAB文件夹下了,因此直接将该.m文件所在的MATLAB文件夹添加到路径,如下:

在这里插入图片描述 然后,保存,关闭。

第三步:重启MATLAB,运行该行代码 注意:一定要重启,不重启发现并没有用。

运行结果: 在这里插入图片描述

ok,完美解决~

如果对你有所帮助,点个赞吧~

关注
打赏
1659256378
查看更多评论
立即登录/注册

微信扫码登录

0.0868s