今天在绘图的时候,又出现了乱码的问题,如图在jupyterlab中运行的好好的,
结果跑到matlab上就出了问题
知乎大佬顺利解决了我的疑惑,先查看一下matlab的编码
get(0,'defaultAxesFontName');
我的系统默认的是英文,matlab默认的也是英文
默认字体是Helvetica,不支持中文,然后看到akoustikos与Bridgoon两位大佬的对话,我试了一下,发现我的居然和akoustikos一样的问题,“我的编辑器中直接run出来的是乱码,但是在命令行中打出来的就不是乱码。”
引用Bridgoon的话“生成图像的default font和命令行里的default font是不一样的。实际上他们也是在不同的地方设置的。”
选中乱码的字体查看查看一下确实如此
然后试了一下,在这里面设置成微软雅黑确实是不起作用的,
set(0,'defaultAxesFontName', '<fontname>')
这个代码不管用。
呃,问题还没解决,但是我不想解决了,浪费时间,改天有时间在做,这个坑暂时就不填了,哈哈哈哈哈哈啊哈
最后附上我的代码
clc;clear all;
x=0:pi/100:pi/2;
y=((sin(x)).^2).*cos(x);
plot(x,y,'r','linewidth',2);
xlabel('弧度θ'),ylabel('函数值');
set(gca,'XTick',[0:pi/8:pi/2]);
set(gca,'xtickLabel',{'0','π/8','π/4','3π/8','π/2'})
p=find(y==max(y));
text(x(p),y(p),['(',num2str(x(p)),',',num2str(y(p)),')'],'color','b');
grid on