Кажется, что создание графики издательского качества с помощью mma - это черное искусство, которое датируется десятилетиями. Хотя в последние годы ситуация значительно улучшилась, при экспорте в файлы все еще трудно получить согласованные результаты. То, как выглядит конечный результат, в некоторой степени зависит от формата (лучше всего работает EPS).
Довольно часто линии в кадрах и метки в файле EPS оказываются слишком бледными, и при попытке сделать что-то вроде FrameStyle->AbsoluteThickness[2]
легко получить слишком толстые линии. Итак, мой текущий подход включает в себя пять параметров - три толщины линий (в FrameStyle, AxesStyle и PlotStyle), ImageSize и FontSize в BaseStyle - и их произвольную настройку до тех пор, пока экспортированный график не станет приемлемым. Это несколько неудовлетворительно и отнимает много времени.
Есть ли лучший способ и / или стандартный рецепт для достижения сбалансированных, красивых участков?
Редактировать: вот один пример. Хорошо выглядит на экране (см. Скриншот), но экспортируйте его в EPS, и вы, вероятно, увидите две вещи: (a) Существует ошибка с встраиванием шрифтов EPS: для меня, эпсилон внутри рисунка не вставляется должным образом, если я не удалю директива FontWeight->Normal
. (b) Рамка / галочки имеют светло-серый цвет и толщину 1 пиксель. Если бы я хотел уменьшить эту цифру (например, чтобы поместить ее как вставку), это бы испортило качество. Тем не менее, использование AbsoluteThickness[2]
выглядит плохо - поэтому я должен увеличить ImageSize
. Но тогда шрифты слишком малы и / или линии на графике выглядят слишком тонкими и т. Д. И т. Д.
With[{exSubscript = "\[UpTee]", epsFontSize = 24,
xcoords = {0.63, 2.2}}, testInset = Style[Inset[Cell[TextData[Cell[
BoxData[FormBox[SubscriptBox["\[Epsilon]", exSubscript],
TraditionalForm]]]]], xcoords, {Left, Baseline}],
FontWeight -> Normal, FontSize -> epsFontSize];
];
Show[Plot[10 x^2, {x, 0, 1}, PlotStyle -> Thick, Frame -> True,
PlotRange -> {-2, 8}, Epilog -> {testInset}], Axes -> {True, True},
AxesOrigin -> {0, 0}, AxesStyle -> Dashed,
FrameLabel -> {"\[Lambda] [\[Mu]m]", "Re{\[Epsilon]}"},
BaseStyle -> {FontSize -> 22, FontWeight -> Plain,
FontFamily -> Helvetica}, ImageSize -> 500]
Export["test.eps", %]

Редактировать: Принимая ответ Сабольча, но г-ну Волшебнику следует отдать должное за указание на поведение FontFamily -> Helvetica
против FontFamily -> "Helvetica"
(которое выглядит как ошибка). Без кавычек экспорт PDF не начинается из-за испорченных шрифтов.