我在Windows下使用octave 3.8.2(带gnuplot)。我想在图的轴标签上写“特殊字符”。变形金刚'ä'和特殊字符μ显示在图中,但未使用打印保存到图像文件中。部分地,我可以使用TeX命令:'\ mu'而不是'μ'但是对于变音符''''而不是'ä'不起作用。
plot(1:10);
%set (findall (gcf (), "-property", "interpreter"), "interpreter", "TeX") % does not work
xlabel('Länge in µm');
ylabel('Breite in \mum');
print('umlaute.jpg', '-djpeg');
答案 0 :(得分:1)
graphics_toolkit("gnuplot")
和pngcairo
或pdfcairo
会产生更好的输出。
graphics_toolkit("gnuplot")
plot(1:10)
xlabel('Länge in µm')
ylabel('Breite in \mum')
print('umlaute.png', '-dpngcairo') # or
# print('umlaute.pdf', '-dpdfcairo')
在linux下使用octave 3.8.2,输出为
答案 1 :(得分:0)
在Windows上使用Octave 4.4.0时,该错误似乎至少已通过print选项'-dpngcairo'修复了graphics_toolkits gnuplot和qt。因此,此脚本在umlaute4-cairo.png文件中给了我很好的输出。
% graphics_toolkit("gnuplot")
graphics_toolkit("qt")
% Do a simple plot with a German umlaut and a Greek micron signs
plot(1:10);
ylabel('Breite in \mum')
xlabel('Länge in \mum')
print('umlaute4.jpg', '-djpg') # not OK, bad umlauts
print('umlaute4.png', '-dpng') # not OK, bad umlauts
print('umlaute4-cairo.png', '-dpngcairo') # OK with gnuplot and qt
答案 2 :(得分:0)
现在可以在Windows上使用带有qt图形工具包的Octave 5.1并对其进行latin1编码了!
graphics_toolkit("qt");
x=1:10;
plot(x, x);
title('Ä Ö Ü');
xlabel('H_2 in µm');
ylabel('Percent in %');
[![enter image description here][1]][1]print("test_umlaute.png");
其他组合(例如UTF8和其他图形工具包)不起作用。
答案 3 :(得分:0)
Octave 5.1中存在一个问题,即启动时无法恢复为.m文件选择的编码。 您可以更改设置中的编码,然后调用“清除功能”以触发再次解析.m文件。或者,您可以调用内部函数“ mfile_encoding ”。对于UTF-8编码,应为:
__mfile_encoding__ ("utf-8");
clear functions