Post initial :

Après un changement de version de pgf/TikZ (suite au passage de fedora 32 à 33) la figure suivante ne compile plus (avec lualatex) :

Ouvrir dans l'éditeur Overleaf
\documentclass{minimal}
\usepackage[french]{babel}
\usepackage{xcolor}
\definecolor{RdBu-9-1}{RGB}{178,24,43}
\definecolor{RdBu-9-2}{RGB}{214,96,77}
\definecolor{RdBu-9-8}{RGB}{67,147,195}
\definecolor{RdBu-9-9}{RGB}{33,102,172}
\usepackage{tikz}
\usetikzlibrary{patterns}
\usetikzlibrary{fadings}
\usetikzlibrary{calc}
\usetikzlibrary{positioning}
\usetikzlibrary{arrows}
\usetikzlibrary{matrix}
\usetikzlibrary{decorations.pathreplacing}
\tikzset{%
ffa/.style={%
pattern=north west lines,
pattern color=RdBu-9-2,
draw=none
},
ffc/.style={%
draw=RdBu-9-1,
line width=1}
}
\usepackage[babel, autostyle]{csquotes}
\begin{document}
\begin{tikzpicture}
\matrix [matrix of nodes,
anchor=west,
nodes={minimum size=.75cm}
] (zla0) at (0,0)
{
\draw[ffa,ffc] (0,0) circle (.3cm);&
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

À la compilation j'obtiens des erreurs comme :

Ouvrir dans l'éditeur Overleaf
ERROR: Package pgf Error: No shape named `zla0-1-2' is known.
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

J'ai cru comprendre que le problème était lié à un changement du comportement de la library matrix, qui ne crée plus automatiquement les identifiants des cellues (eg. m-1-1), mais je ne trouve pas de documentation sur le sujet.

J'ai aussi l'impression que le paramètre nodes={minimum size=.75cm} ne fonctionne plus, il y a une nouvelle manière de procéder ?

Mise à jour (6/10/20):

J'ai posé la même question sur le forum TeX de stackexchange et on m'a proposé une solution qui fonctionne bien. Il suffit d'ajouter la commande \tikz avant chaque \draw. Le code reprend alors sont comportement initial :

  • Tous les noeuds ont à nouveau un identifiant qui leur est propre
  • Les cercles sont correctement espacés, l'option nodes={minimum size=.75cm} fonctionne à noueau.

Il y a cependant une petite différence avec le comportement initial, les lignes sont un peu plus épaisses, mais ça ne me pose pas vraiment problème.

Je vous laisse aller voir le post pour avoir des détails sur les modifications opérés sur tikz entre les versions 3.1.4b (fedora 32) et 3.1.5b (fedora 33)

Cette question est marquée comme « Wiki ».

Posée 03 Nov '20, 12:16

Atm's gravatar image

Atm
113
Taux d'acceptation : 0%

Modifiée 06 Nov '20, 12:49

Bienvenue sous TeXnique ! Une question similaire a déjà été posée. Sa réponse convient-elle ici ?

(03 Nov '20, 14:13) denis ♦♦ denis's gravatar image

Bonjour. Pas vraiment, puisque j'utilise la fonction \draw (et pas \node comme dans l'exemple) dans mes cellules de matrices, je ne peux donc pas donner directement (ou alors j'ignore comment) un identifiant aux cellules de la matrice.

(03 Nov '20, 15:11) Atm Atm's gravatar image

@Atm : bienvenue sur TeXnique !

Pourquoi ne pas utiliser des nœuds ? La fonction \node est bien utile.

(03 Nov '20, 15:55) Pathe ♦♦ Pathe's gravatar image

Je ne suis pas un spécialiste de TikZ et n'ai pas de réponse. Mais je remarque que lorsque l'élément 1-2 de la matrice n'est pas un chemin (« path »), le problème ne se pose plus. Pour le constater, il suffit de remplacer le 2e \draw[ffa,ffc] (0,0) circle (.3cm); par, par exemple, coucou.

(03 Nov '20, 15:59) denis ♦♦ denis's gravatar image

J'avoue ne pas comprendre le choix d'utiliser des matrices pour obtenir le schéma désiré.

Pourquoi ne pas utiliser des graphes ? La librairie graphs est détaillée dans la doc, à partir de la page 269, et elle me semble répondre à votre besoin.

(03 Nov '20, 16:12) Pathe ♦♦ Pathe's gravatar image

@Pathe merci

  1. À vrai dire je ne sais pas vraiment pourquoi j'utilise \draw, j'ai fait cette figure il y a un petit moment. J'ai sûrement fait ce qui semblait le plus simple sur le moment et comme ça fonctionnait comme ça…

  2. En fait cette figure est construite à partir d'une autre figure plus compliquée (avec laquelle j'ai le même problème, mais l'exemple aurait été plus long), qui met en lien des matrices contenant des symboles (comme ici) et des matrices contenant des valeurs. J'ai donc utilisé des matrices partout pour avoir un rendu cohérent.

(03 Nov '20, 16:27) Atm Atm's gravatar image

@denis

Oui en effet, j'arrive aussi à compiler comme ça. j'ai l'impression qu'avec cette nouvelle version de tikz un noeud est implicitement crée, avec le contenu de la cellule comme label (ie coucou est transformé en \node{coucou}).

(03 Nov '20, 16:30) Atm Atm's gravatar image
Affichage de 5 parmi 7 Afficher 2 commentaire(s) en plus
Soyez le premier à répondre à cette question !
[Masquer 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

Mots-clés de la question :

×109
×33
×2

Question posée : 03 Nov '20, 12:16

Question vue : 1,286 fois

Dernière mise à jour : 06 Nov '20, 12:49

C'est votre première visite ici ? Consultez la FAQ !

×