关于matlab图像title显示中文乱码问题解决的一种方法参考

这篇文档只是介绍了一种方法,没有什么高深的技术原理,轻点喷。

前言

Emmmm,就我目前了解和自己经历的,matlab的字符显示问题时困扰很多使用matlab进行相关操作的同学。一搜索 matlab 中文乱码 等关键词的一大堆回答,有的答案能够解决你的问题,有的答案不能够解决你的问题。
我使用的是Matlab2018a,这次我因为图窗里的图形的title显示中文乱码(我之前调教好了的,可能因为我修改字体为Monospaced了),所以有进行了搜索一番。因为了解不深,在尝试了我搜索到的方法后,误打误撞的在官方文档里解决了我的问题。因为是在官方文档里看到的,所以我觉得有必要介绍一下(我没看其他博客/回答里有人说这个方法,赶紧发一个)。

一般方法

  • 1.电脑控制面板,时钟和区域->区域->更改日期、时间、或数字格式->管理进行设置为 Chinese(Simplified,China).,具体查看最下面的ref-1
  • 2.title('Test','FontName','STFangSong');,具体查看最下面的ref-2
  • 3.set(gca,'Fontname','Monospaced');,具体查看最下面的ref-3
  • 4.修改软件目录下的lcdata.xml的内容,具体查看最下面的ref-4

解决我对问题的方法

我在看完ref-4后,他说我猜测matlab硬编码了locale列表,而不是查询lcdata.xml.其内部的locale格式,也就是说需要软件他自己来解决,已经集成到程序中了。
解决我对问题的方法就是在matlab的命令行里使用slCharacterEncoding()语句。具体内容参考官方文档ref-5
下面是我的命令行内容

>> current = slCharacterEncoding()

current =

    'UTF-8'

>> slCharacterEncoding('US-ASCII')
>> slCharacterEncoding('UTF-8')
>> current = slCharacterEncoding()

current =

    'UTF-8'

我之前有修改lcdata.xml文件内容,所以是utf-8,但是修改的是编码,解码可能没有修改,导致不统一,上面的来回重置,应该是程序同步了,具体发什么了什么我也不清楚(滑天下之大稽),再次打开时发现有问题,可以重复使用,当然也可以设置在matlab启动时自动更改,具体看ref6。如果没有解决问题,就发挥你的强大的搜索功能和理解功能吧。如果解决了,麻烦点个赞。有啥问题可以在下面评论流言。就这样了。

Ref

1.如何解决 Matlab 画图时中文显示乱码的问题? - 张红亮的回答 - 知乎
https://www.zhihu.com/question/20757354/answer/121977763
2.如何解决 Matlab 画图时中文显示乱码的问题? - 刘果的回答 - 知乎
https://www.zhihu.com/question/20757354/answer/82649615
3.如何解决 Matlab 画图时中文显示乱码的问题? - alando的回答 - 知乎
https://www.zhihu.com/question/20757354/answer/113217968
4.https://www.cnblogs.com/leoking01/p/8269516.html
5.https://ww2.mathworks.cn/help/simulink/slref/slcharacterencoding.html
6.https://ww2.mathworks.cn/help/matlab/matlab_env/startup-options.html#brlkmbe-1

你可能感兴趣的:(Matlab,matlab,乱码)