У меня возникает проблема с созданием векторных графиков PDF после ручной настройки цветов патчей.Растрированный PDF-вывод после ручной установки «FaceVertexCData» патча в MATLAB
После установки цвета граней накладных и вершин, используя вызов для установки (...), чтобы установить свойство «FaceVertexCData» патча, вывод PDF произведенный как «savefig» и «SaveAs» является растрированный и больше не в векторном формате. Этого не происходит, если «FaceVertexCData» не изменяется.
Например,
clear all; close all;
h = bar([1 2 3 ; 3 2 1 ; 3 4 4]);
saveas(gcf, 'barplot.pdf', 'pdf');
savefig('barplot.pdf', 'pdf');
производит прекрасно векторизованную PDF из участков.
С другой стороны, следующий код будет производить уродливые векторизованные PDF сюжеты:
clear all; close all;
h = bar([1 2 3 ; 3 2 1 ; 3 4 4]);
ch = get(h,'children');
set(ch{1},'FaceVertexCData',[1 0 0 ; 0 1 0; 0 0 1]);
set(ch{2},'FaceVertexCData',[1 0 0 ; 0 1 0; 0 0 1]);
set(ch{3},'FaceVertexCData',[1 0 0 ; 0 1 0; 0 0 1]);
saveas(gcf, 'barplot_savefig_FaceVertexCData.pdf', 'pdf');
savefig('barplot_saveas_FaceVertexCData.pdf', 'pdf');
Что является причиной этой проблемы? Как это можно решить? Любые подсказки будут приветствоваться.
Большое спасибо.
Edit: MATLAB Версия: 8.0.0.783 (R2012b) на OS X
Почему это помечено для Ghostscript? Если Matlab использует Ghostscript для преобразования PostScript в PDF, то я, вероятно, могу рассказать вам, почему меш визуализируется путем изучения промежуточного PostScript, но мне нужно его увидеть. – KenS