- Questo topic ha 3 risposte, 3 partecipanti ed è stato aggiornato l'ultima volta 12 anni, 9 mesi fa da .
-
Topic
-
Ciao!Devo disegnare tramite il pacchetto venndiagram il complementare di un insieme A, utilizzando l’ambiente venndiagram2sets mi disegna il rettangolo con dentro contenuti gli insiemi A e B, io invece voglio che ci sia l’insieme A solamente e l’area circostante dentro il rettangolo indicata con l’insieme X, come si può vedere dall’immagine allegata.
[attachment=847]Immagine_2013-11-28.jpg[/attachment]
Ho provato a creare un nuovo ambiente tramite questo codice:
\newenvironment{venndiagram1set}[1][]%
{%
\setkeys{venn}{#1}%
\def\fillA{\path[fill=\@venn@shade] (\@venn@Ax,\@venn@Ay)circle (\@venn@radius);}%
\def\fillAll{\path[fill=\@venn@shade] (0,0) rectangle (\@venn@w,\@venn@h);}%
\def\fillNotA{\path[fill=\@venn@shade,even odd rule](0,0) rectangle (\@venn@w,\@venn@h) (\@venn@Ax,\@venn@Ay) circle (\@venn@radius);}%
\ifdefempty{\@venn@tikzoptions}%
{%
\def\@venn@dobegin{\begin{tikzpicture}}%
}%
{%
\edef\@venn@dobegin{\noexpand\begin{tikzpicture}%
[\expandonce\@venn@tikzoptions]}%
}%
\@venn@dobegin
\path (0,0) coordinate (venn bottom left)(0,\@venn@h) coordinate (venn top left)(\@venn@w,\@venn@h) coordinate (venn top right)(\@venn@w,0) coordinate (venn bottom right);
}%
{%
\draw (venn bottom left) rectangle (\@venn@w,\@venn@h);
\draw (\@venn@Ax,\@venn@Ay) circle (\@venn@radius);
\draw (\@venn@Ax,\@venn@Ay) node[above,left] (labelOnlyA) {\@venn@label@OnlyA};
\draw (\@venn@vgap,\@venn@hgap) node (labelNotA) {\@venn@label@NotA};
\draw (\@venn@Ax,\@venn@Ay+\@venn@radius) node[below] (labelA) {\@venn@label@A};
\@postvennhook
\end{tikzpicture}
}E poi nel documento ho scritto:
\begin{figure}[!htbp]
\centering
\begin{venndiagram1set}[labelNotA={X}]
\fillNotA
\end{venndiagram1set}}
\end{figure}Ma compilando mi dice che non esiste il comando labelNotA, forse ho sbagliato a definirlo?
Qualcuno può aiutarmi?
Grazie.
- Devi essere connesso per rispondere a questo topic.