Wenn ich eine Tabelle

Öffne in Overleaf
table[header=true, row sep=\\] {
x y Text           \\
0 2 bleibt              \\%0
2 2                     \\%1
0 1                   \\%2
0 0 bleibt.auch             \\%3
1 0                   \\%4
2 0               \\%5
2 0                 \\%
1 1                  \\%7
};

plotte, dann muss

  1. in der obersten Zeile ein Wert angebeben werden (sonst Fehlermeldung);
  2. dieser Wert wird dann auch für in der 'Text-Spalte' leere Zeilen übernommen (solange bis dort etwas neues steht, dann wird dieser Wert übernommen)

Frage: Was kann ich tun, damit visualization depends on={value \thisrowno{2} \as \Text} nur dann etwas liefert, wenn in \thisrowno{2} auch ein Eintrag steht, sonst leer bleibt?

alt text

Öffne in Overleaf
\documentclass[margin=5mm, tikz]{standalone}
\usepackage{pgfplots}
\usepgfplotslibrary{patchplots}

\begin{document}

\begin{tikzpicture}
\begin{axis}[hide axis]
\addplot+[only marks,
visualization depends on={value \thisrowno{2} \as \Text},
nodes near coords={\coordindex ~Text: \Text},
every node near coord/.append style={font=\scriptsize}
]
table[header=true, row sep=\\] {
x y Text           \\
0 2 bleibt              \\%0
2 2                     \\%1
0 1                   \\%2
0 0 bleibt.auch             \\%3
1 0                   \\%4
2 0               \\%5
2 0                 \\%
1 1                  \\%7
};
\end{axis}
\end{tikzpicture}

\end{document}

gefragt 29 Aug, 07:14

cis's gravatar image

cis
8.3k16171267
Akzeptiert: 69%

bearbeitet 29 Aug, 07:16


Gib in den leeren Zellen {} ein.

Nicht relevant für die Frage, aber ansonsten wichtig: setze immer compat.

Öffne in Overleaf
\documentclass[margin=5mm, tikz]{standalone}
\usepackage{pgfplots}
\usepgfplotslibrary{patchplots}

\begin{document}

\begin{tikzpicture}
\begin{axis}[hide axis]
\addplot+[only marks,
visualization depends on={value \thisrowno{2} \as \Text},
nodes near coords={\coordindex ~Text: \Text},
every node near coord/.append style={font=\scriptsize}
]
table[header=true, row sep=\\] {
x y Text        \\
0 2 bleibt      \\%0
2 2 {}          \\%1
0 1 {}          \\%2
0 0 bleibt.auch \\%3
1 0 {}          \\%4
2 0 {}          \\%5
2 0 {}          \\%
1 1 {}          \\%7
};
\end{axis}
\end{tikzpicture}

\end{document}

alt text

Permanenter link

beantwortet 29 Aug, 08:02

esdd's gravatar image

esdd
16.9k83854

bearbeitet 04 Sep, 20:32

Henri's gravatar image

Henri
13.4k42736

Ok. Puh, damit wird die (extern erstellte) Datentabelle ein Stück mehr "LaTeX-lastig"; so wie z.B. dieses row sep=\\ manchmal scheints notwendig ist (hier noch nicht). Ich hatte gehofft, man kann das ggf. global lösen.

(29 Aug, 08:39) cis
Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs füge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×261
×69

Frage gestellt: 29 Aug, 07:14

Frage wurde angeschaut: 250 Mal

Zuletzt aktualisiert: 04 Sep, 20:33