Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
matlab';什么是unicode?_Matlab_Unicode_Matlab Figure - Fatal编程技术网

matlab';什么是unicode?

matlab';什么是unicode?,matlab,unicode,matlab-figure,Matlab,Unicode,Matlab Figure,我想知道MATLABs latex绘图文本解释器如何处理unicode字符?这是奇怪的前后矛盾。你知道,这使unicode的整个观点无效 玩具代码 %*** Setup some text for a plot title Title_Txt{1} = [char(8734) ,' SNR~~~' , char(10) , '(-)']; Title_Txt{2} = ['50 SNR~~~' , char(10) , '(-)']; %*** Plots! x= 1:1:10 y= ran

我想知道MATLABs latex绘图文本解释器如何处理unicode字符?这是奇怪的前后矛盾。你知道,这使unicode的整个观点无效

玩具代码

%*** Setup some text for a plot title
Title_Txt{1} = [char(8734) ,' SNR~~~' , char(10) , '(-)'];
Title_Txt{2} = ['50 SNR~~~' , char(10) , '(-)'];


%*** Plots!
x= 1:1:10
y= rand(size(x))

figure(1)
subplot(211)
plot(x,y)
title(Title_Txt{1} , 'interpreter' , 'latex')

subplot(212)
plot(x,y)
title(Title_Txt{2} , 'interpreter' , 'latex')

Toy代码演示了latex解释器处理char(10)——一个新行。但它与char(8734)——无限符号——不同

显然,我可以通过输入一个matlab知道的乳胶符号来解决这个问题(另一个令人沮丧的原因,但这是另一个不同的讨论),但我很好奇

  • MATLAB在引擎盖下面做什么
  • 是否有一个将unicode引入latex的修复程序
我怀疑(不令人满意的)答案是,Matlab的Latex解释器部分执行包含的Latex版本所执行的操作,而Latex通常不支持Unicode。(有关Latex解决方案,请参阅:。当然,这对Matlab用户没有帮助。)

至于为什么Latex不支持Unicode。我会注意到,我的Latex用户指南的第一个版权日期是1985年,最新版本是2e版,从1994年开始。直到90年代,Unicode才真正成为主流


(这是一个糟糕的答案,但太长了,无法发表评论。)

此外,matlab没有列出文档中使用的Unicode格式。我猜“有效代码范围从0到65535”意味着“char()基于unicode UTF-16进行解释”?尽管如此,还是有意思的信息!尽管我每天都使用LaTeX,但我并没有真正考虑到LaTeX可能从根本上不符合unicode。这很可能是最好的答案,因为MATLAB可能只是调用pdfTex,而pdfTex不像LuaTex或XeTeX引擎那样对unicode友好,没有选择如何使用unicode。这就是我使用
matlab2tikz
发布raw LaTeX并选择所需引擎的原因之一@马克·安德森