Résolu ma requête avec assez peu de tracas. C'était une solution en deux étapes à laquelle je n'aurais pas abouti sans suivre les conseils des membres qui ont répondu.
Pour modifier les paramètres de texte ggplot par défaut, j'ai adapté le code auquel Brandon m'a renvoyé à l'adresse :
http://johndunavent.com/combined-line-and-bar-chart-ggplot2
Où John Dunavent crée une fonction, theme_min, qui peut être modifiée pour fournir les options par défaut d'un ggplot, y compris l'utilisation de polices importées de Windows avec la commande windowsFonts. Mon adaptation de son code ressemble à ceci :
theme_min = function (size=10, font=NA, face='plain',
panelColor=couleurFond, axisColor='#999999',
gridColor=couleurLignesGrille, textColor='black')
{
theme_text = function(...)
ggplot2::theme_text(family=font, face=face, colour=textColor,
size=size, ...)
opts(
axis.text.x = theme_text(),
axis.text.y = theme_text(),
axis.line = theme_blank(),
axis.ticks = theme_segment(colour=axisColor, size=0.25),
panel.border = theme_rect(colour=couleurFond),
legend.background = theme_blank(),
legend.key = theme_blank(),
legend.key.size = unit(1.5, 'lines'),
legend.text = theme_text(hjust=0),
legend.title = theme_text(hjust=0),
panel.background = theme_rect(fill=panelColor, colour=NA),
panel.grid.major = theme_line(colour=gridColor, size=0.33),
panel.grid.minor = theme_blank(),
strip.background = theme_rect(fill=NA, colour=NA),
strip.text.x = theme_text(hjust=0),
strip.text.y = theme_text(angle=-90),
plot.title = theme_text(hjust=0),
plot.margin = unit(c(0.1, 0.1, 0.1, 0.1), 'lines'))
}
##Créer un type de police personnalisé. Peut être 'F', 'TEST', peu importe
windowsFonts(F = windowsFont('Wide Latin'))
##et insérer cette ligne de code dans le code original que j'ai énuméré ci-dessus:
+ theme_min(font='F', size=10)
Malheureusement, il n'y a pas moyen (que j'aie trouvé) de modifier de manière générique les paramètres de police pour les objets geom_text avant de créer un graphique. La solution de James ci-dessus a parfaitement fonctionné pour cela. Au lieu d'utiliser une police standard, j'ai défini fontfamily="F" pour intégrer la police personnalisée que j'ai sélectionnée dans theme_min(), c'est-à-dire :
grid.gedit("GRID.text",gp=gpar(fontfamily="F"))
J'espère que cela sera utile à d'autres utilisateurs cherchant à modifier les polices sur leurs graphiques.
Merci à tous ceux qui m'ont aidé à résoudre cela ! Aaron
0 votes
Que diriez-vous de
tikzDevice
et de XeTeX?