Exportation de graphiques pour des publications: comment obtenir des épaisseurs de ligne cohérentes dans les éléments de tracé?
Il semble que la création de la publication-des graphiques de qualité avec mma est noir, d'un art qui remonte à plusieurs décennies. Même si les choses ont beaucoup progressé ces dernières années, il est encore difficile d'obtenir des résultats cohérents lors de l'exportation de fichiers. La façon dont le résultat final est semble être un peu le format-dépendante (avec EPS qui marche le mieux dans mon expérience).
Assez souvent, les lignes dans les images et les marques de graduation à la fin, trop faible dans le fichier EPS, et en essayant de faire quelque chose comme FrameStyle->AbsoluteThickness[2]
il est facile d'obtenir des lignes trop épaisses. Donc, mon approche actuelle consiste à prendre des cinq paramètres -- trois épaisseurs de ligne (en FrameStyle, AxesStyle, et PlotStyle), - Image, et FontSize dans BaseStyle -- et au hasard peaufiner jusqu'à ce que le exportés de la parcelle semble acceptable. C'est un peu insatisfaisant et beaucoup de temps.
Est-il une meilleure façon et/ou une prescription à suivre pour réaliser l'équilibre, de bonne à la recherche de parcelles?
Edit: voici un exemple. Semble bon sur l'écran (voir capture d'écran), mais l'exporter en EPS et vous aurez probablement voir deux choses: (a) Il y a un bug avec l'EPS à l'intégration des polices: pour moi, l'epsilon à l'intérieur de la figure n'intègre pas correctement à moins que j'ai supprimer le FontWeight->Normal
directive. (b) L'image/les tiques sont des lignes de gris clair et de 1 pixel d'épaisseur. Si je le voulais pour réduire ce chiffre (par exemple, pour placer un encart), il aurait corbeille de la qualité. Cependant, l'utilisation de AbsoluteThickness[2]
est de mauvaise qualité, j'ai donc augmenter ImageSize
. Mais alors les polices de caractères sont trop petits et/ou des lignes dans la parcelle trop mince, etc, etc.
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", %]
Edit: en Acceptant de Szabolcs de réponse, mais M. Assistant doit être donné de crédit pour souligner la FontFamily -> Helvetica
vs FontFamily -> "Helvetica"
comportement (ce qui semble être un bug). Sans les guillemets, l'export PDF est un non-starter en raison vissé-up polices.
source d'informationauteur Leo Alekseyev
Vous devez vous connecter pour publier un commentaire.
Écran vs impression de visualisation
Il est difficile de comparer les épaisseurs de ligne sur l'écran, en particulier lors de l'affichage de l'épaisseur de la obtiendrait près de 1 pixel. J'ai trouvé qu'il est préférable d'imprimer les chiffres lors de la finale de la taille de la composition, et de vérifier leur qualité de cette façon.
Utiliser les mesures absolues
La plupart des problèmes que j'ai eu avec cette tige du fait que Mathematica utilise à la fois absolue et relative (par rapport à la taille de la parcelle) des mesures. Pour les figures qui apparaissent dans la presse, il est plus facile d'utiliser des tailles absolues qui ne sont pas à l'échelle de la parcelle, en particulier pour les tailles de police et de l'épaisseur de la ligne. De cette façon, vous pouvez avoir une bonne idée de ce que le résultat va ressembler à imprimer (et il est indépendant de la taille de la figure). Les chiffres que vous donnez à Mathematica sont dans les points d'imprimante.
L'exportation
Enfin, j'ai trouvé que l'exportation au format EPS est moins fiable que l'exportation au format PDF (par exemple, les polices peuvent ne pas être incorporés, comme vous l'avez mentionné), et Mathematica est incapable de préserver toutes les caractéristiques (par exemple, l'opacité!) lors de l'exportation à l'EPS. Pour les tracés 2D PDF est généralement un bon choix. Cependant, il y a un bug lors de l'exportation de fichiers PDF et en spécifiant le-Image dans l'Exportation. La solution que j'utilise est
L', vous pouvez inclure le résultat dans le document sans mise à l'échelle, et vous aurez même police de tailles et d'épaisseurs de ligne à travers tous les chiffres.
En résumé, ce qui a plus ou moins fonctionné pour moi:
J'ai remplacé
FontFamily -> "Helvetica"
et exporté au format PDF. L'ouverture de PDF Foxit Reader, je vois ceci:Autres que le zoom différentes (je ne sais pas pourquoi), il semble tout à fait similaire à votre rendu.
Je regarde de près LevelSchemeque j'ai utilisé pour la publication des graphiques de qualité.