Bonjour à toutes et tous.
Je souhaite que les nombres en abscisse et ordonnée de mes graphiques soient formatés conformément aux règles françaises, à savoir avec la virgule comme séparateur décimal et, si possible, une espace fine insécable comme séparateur des milliers. Le tout en aspect LaTeX. Voici un exemple minimal qui montre le problème que je rencontre.
Le premier graphique est créé sans problème. La locale fr met bien la virgule comme séparateur décimal, le package LaTeX icomma évite l'espace après la virgule.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 from matplotlib import pyplot as plt import locale locale.setlocale(locale.LC_NUMERIC, 'fr') plt.rcParams.update({ 'axes.formatter.use_locale':True, 'text.usetex': True, 'font.family': 'Computer Modern', 'text.latex.preamble' : r'\usepackage{icomma}', }) plt.plot([0,200],[0,1]) plt.show() plt.plot([0,1200],[0,1]) plt.show()
Le deuxième graphique n'est pas créé car le séparateur décimal voulu pour les milliers, espace fine insécable, n'est pas reconnu par LaTeX. Le message d'erreur est
! LaTeX Error: Unicode character (U+202F) not set up for use with LaTeX.
J'ai essayé d'ajouter un préambule LaTeX \DeclareUnicodeCharacter{202F}{\,} par exemple, sans succès...
Merci pour votre aide.
Partager