Ccomment faire pour indiquer que je souhaite que le séparateur entre la partie entière et la partie décimale soit la virgule et non le point ?

ECM :

Ouvrir dans l'éditeur Overleaf
    \documentclass[10pt,french]{report}

    \usepackage[french]{babel}
    \usepackage{siunitx}
    \DecimalMathComma

\begin{document}
zscale=automatic ; $z_{min}=\SI{-3,19}{\nano\metre}$ ; $z_{max}=\SI{2,87}{\nano\metre}$.\\
zscale=automatic ; $z_{min}=\SI{-3.19}{\nano\metre}$ ; $z_{max}=\SI{2.87}{\nano\metre}$.\\
\end{document}

Les deux lignes indiquent la même réponse...

Posée 25 Avr '20, 22:13

cbreton's gravatar image

cbreton
75753748
Taux d'acceptation : 9%

Modifiée 25 Avr '20, 22:13


avec l'option \sisetup{locale = FR} ça devrait passer. Vous pouvez garder les . dans le code, ie \SI{-3.19}{\nano\metre}. Sinon $z_{\max}$ et $z_{\min}$ c'est mieux.

Lien permanent

Publiée 25 Avr '20, 22:41

pluton's gravatar image

pluton
1.2k22937
Taux d'acceptation : 34%

Modifiée 25 Avr '20, 22:41

1

$z_{\max}$ et $z_{\min}$, ça n'est pas seulement mieux : c'est correct ; tandis que $z_{max}$ et $z_{min}$, c'est incorrect :)

(26 Avr '20, 12:30) denis ♦♦ denis's gravatar image

La réponse se trouve dans la documentation de siunitx : il est possible de régler cela grâce à l'option output-decimal-marker.

Ouvrir dans l'éditeur Overleaf
\num[output-decimal-marker = {,}]{1.23}
\num[output-decimal-marker = {,}]{1,23}

Ces deux commandes produiront un « 1,23 ». L'option peut également être passée lors de l'importation du paquet pour être appliquée à tout le document :

Ouvrir dans l'éditeur Overleaf
\usepackage[output-decimal-marker={,}]{siunitx}

Ce que vous voulez vraiment est probablement plutôt le code suivant :

Ouvrir dans l'éditeur Overleaf
\usepackage[locale=FR]{siunitx}

Qui applique automatiquement les règles françaises d'affichage des nombres.

Lien permanent

Publiée 25 Avr '20, 22:47

GuiTsi's gravatar image

GuiTsi
485310
Taux d'acceptation : 8%

Modifiée 27 Avr '20, 22:27

Pathe's gravatar image

Pathe ♦♦
7.5k42204251

Le plus simple est sans doute d'utiliser la clef copy-decimal-marker. Siunitx définit aussi les clefs input-decimal-marker et output-decimal-marker, si besoin était.

Indépendamment de ce problème, ne mettez pas du texte en indice ou en exposant brut de décoffrage: les lettres qui le composent apparaîtront avec les espacements d'un produit de variables. D'autre part, employez les abréviations d'unités dans les commandes \SIou \si ‒ cela vous évitera de la frappe inutile.

Ouvrir dans l'éditeur Overleaf
\documentclass[10pt, french]{report}

\usepackage{babel}
\usepackage{siunitx}
\sisetup{copy-decimal-marker}
\DecimalMathComma

\begin{document}

\noindent
zscale=automatic ; $z_{\min}=\SI{-3,19}{\nm}$ ; $z_{\max}=\SI{2,87}{\nm}$.\\
zscale=automatic ; $z_{\min}=\SI{-3.19}{\nm}$ ; $z_{\max}=\SI{2.87}{\nm}$.\\

\end{document}

alt text

Lien permanent

Publiée 25 Avr '20, 22:58

Bernard's gravatar image

Bernard
4.6k15
Taux d'acceptation : 35%

Modifiée 25 Avr '20, 23:36

1

Je ne connaissais pas copy-decimal-marker : merci. Mais je préconiserais plutôt l'option locale=FR qui assure que, en sortie, le séparateur décimal est conforme aux règles en France et ce, quel que soit le séparateur (point ou virgule) employé en entrée.

(26 Avr '20, 12:34) denis ♦♦ denis's gravatar image
Votre réponse
(dés)activer l'aperçu

Suivre cette question

Par courriel :

Une fois que vous serez enregistré, vous pourrez souscrire à n'importe quelle mise à jour ici

Par flux RSS :

Réponses

Réponses et commentaires

Bases de Markdown

  • *italique* ou _italique_
  • **gras** ou __gras__
  • Lien ::[texte](http://url.com/ "Titre ")
  • Image : ?![alt texte](/path/img.jpg "Titre ")
  • Liste numérotée : 1. Foo 2. Bar
  • Pour ajouter un passage à la ligne, ajoutez deux espaces à l'endroit où vous souhaitez que la ligne commence.
  • Les balises HTML de base sont également prises en charge.