Je rencontre un problème avec la matrice suivante, dans laquelle la première diagonale de pointillés (celle qui est censée relier les deux zéros) tombe "à côté" de là où elle devrait normalement tomber...

Je rencontre assez souvent ce problème, et j'ai du mal à comprendre ce qui coince dans ma manière de faire...

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage{geometry}
\usepackage{nicematrix}
\usepackage{babel}

\begin{document}

\[
M(T_n) = \begin{pNiceMatrix}[nullify-dots]
    M(\omega_1) & \beta_1^{(1)} & *             &        & \Cdots &     *   \\
    0           & M(\omega_2)   & \beta_2^{(2)} & \Ddots &        &         \\
    \Vdots      & \Ddots        & \Ddots        & \Ddots &        & \Vdots \\
                &               &               &        &        & * \\
                &               &               &        &        & \beta_{n-1}^{(1)}   \\  
    0           & \Cdots        &               &        &      0 & M(\omega_n) 
\end{pNiceMatrix}
\]

\end{document}

Posée 13 Nov '23, 16:23

endomorphisme's gravatar image

endomorphisme
30110
Taux d'acceptation : 0%

Modifiée 13 Nov '23, 16:24


Par défaut, les lignes pointillées diagonales sont « parallélisées », ce qui veut dire que la première est tracée et que les suivantes sont tracées parallèlement à la première (à partir de leur extrémité supérieure gauche). Il est possible de désactiver ce mécanisme avec la clé parallelize-diags=false, comme dans le code suivant.

\documentclass{article}
\usepackage[french]{babel}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{nicematrix}

\begin{document}

\[
M(T_n) = \begin{pNiceMatrix}[nullify-dots,parallelize-diags=false]
    M(\omega_1) & \beta_1^{(1)} & *             &        & \Cdots &     *   \\
    0           & M(\omega_2)   & \beta_2^{(2)} & \Ddots &        &         \\
    \Vdots      & \Ddots        & \Ddots        & \Ddots &        & \Vdots \\
                &               &               &        &        & * \\
                &               &               &        &        & \beta_{n-1}^{(1)}   \\  
    0           & \Cdots        &               &        &      0 & M(\omega_n) 
\end{pNiceMatrix}
\]

\end{document}

Ce n'est peut-être pas le résultat escompté. Pour avoir un meilleur résultat (encore que cela dépende des goûts...), le mieux est souvent d'imposer une largeur commune à toutes les colonnes (avec columns-width=auto) et de jouer ensuite sur le paramètre LaTeX \arraystretch.

\documentclass{article}
\usepackage[french]{babel}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{nicematrix}

\begin{document}

\[\renewcommand{\arraystretch}{1.5}
M(T_n) = \begin{pNiceMatrix}[nullify-dots,columns-width=auto]
    M(\omega_1) & \beta_1^{(1)} & *             &        & \Cdots &     *   \\
    0           & M(\omega_2)   & \beta_2^{(2)} & \Ddots &        &         \\
    \Vdots      & \Ddots        & \Ddots        & \Ddots &        & \Vdots \\
                &               &               &        &        & * \\
                &               &               &        &        & \beta_{n-1}^{(1)}   \\  
    0           & \Cdots        &               &        &      0 & M(\omega_n) 
\end{pNiceMatrix}
\]

\end{document}
Lien permanent

Publiée 13 Nov '23, 20:57

fpantigny's gravatar image

fpantigny
1.2k44
Taux d'acceptation : 34%

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.