Überarbeitungsverlauf[Zurück]
Klicke auf Einblenden/Ausblenden von Überarbeitungen 5
Grafiken waren störend groß, Markdown, Tipps beachtet

26 Jun '16, 11:24

saputello's gravatar image

saputello
11.1k174365

Problem mit symbolic x coords und \draw

Hallo zusammen, ich Ich habe folgenden funktionierenden Code für ein Diagramm: \documentclass[12pt,a4paper]{report} \usepackage[utf8]{inputenc} \usepackage{pgfplots} \pgfplotsset{compat=newest} \usetikzlibrary{patterns} \pgfkeys{/pgf/number format/.cd ,use comma ,set thousands separator={ }} \pgfplotsset{ every axis label/.append style={font=\scriptsize}, every tick label/.append style={font=\scriptsize}} % globale Einstellungen. \pgfplotsset{scaled y ticks=false} %keine wiss. notation bei achsen \begin{document} % nur eine Säule anzeigen \pgfplotsset{/pgfplots/ybar legend/.style={ /pgfplots/legend image code/.code={\draw[##1,/tikz/.cd,bar width=3pt,yshift=-0.2em,bar shift=0pt] plot coordinates {(0cm,0.8em) };}, }} begin{figure}[h!] \centering \begin{tikzpicture} \begin{axis}[ width=\textwidth, height=8cm, ymax = 70000, legend style={at={(0.5,-0.5)}, anchor=north,legend columns=-1, draw=none}, ybar, xtick = {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, x tick label style={rotate=90}, %Achsenbeschriftung drehen grid, grid style={dashed}, ] \addplot[pattern = north west lines, pattern color = blue] coordinates { (1,1069) (2, 486) (3, 314) (4, 671) (5, 2566) (6, 1324) (7, 912) (8, 4518) (9, 2259) (10, 1539) (11, 1086) (12, 2060) (13, 1539) (14, 1086)}; \addplot[pattern = north west lines, pattern color = gray] coordinates { (1,5051) (2, 2268) (3, 1420) (4, 1033) (5, 14948) (6, 8000) (7, 5464) (8, 45249) (9, 25189) (10, 17212) (11, 12225) (12, 54645) (13, 41152) (14, 29155)}; \draw [black,thick] (0.8,10000) --(4.2,10000) node[pos = 0.5,above] {Größe 1}; \draw [black,thick] (4.8,20000) --(7.2,20000) node[pos = 0.5,above] {Größe 2}; \draw [black,thick] (7.8,50000) --(11.2,50000) node[pos = 0.5,above] {Größe 3}; \draw [black,thick] (11.8,60000)--(14.2,60000) node[pos = 0.5,above] {Größe 4}; \legend{alt,neu} \end{axis} \end{tikzpicture} \end{figure} \end{document} Damit erhalte ich folgendes Diagramm: ![alt text][1] Anstatt mit Zahlen möchte ich die x-Achse `x`-Achse jedoch mit verschiedenen Artikelbezeichnungen beschriften, so wie hier: ![alt text][2] text][3] Normalerweise geht das ja dann über symbolic x-coords. `symbolic x-coords`. Also hiermit: symbolic x coords={KBH1 150 A, KBH1 150 B, KBH1 150 C, KBH1 150 D, KBH1 250 B, KBH1 250 C, KBH1 250 D, KBH1 350 A, KBH1 350 B, KBH1 350 C, KBH1 350 D, KBH1 450 B, KBH1 450 C, KBH1 450 D}, xtick={KBH1 150 A, KBH1 150 B, KBH1 150 C, KBH1 150 D, KBH1 250 B, KBH1 250 C, KBH1 250 D, KBH1 350 A, KBH1 350 B, KBH1 350 C, KBH1 350 D, KBH1 450 B, KBH1 450 C, KBH1 450 D}, Nur dann bekomme ich logischerweise eine Fehlermeldung für `\draw` da es die x-Koordinaten `x`-Koordinaten nicht kennt. Schreibe ich nun aber: \draw [black,thick] (KBH1 150 A,10000) --(KBH1 150 D,10000) node[pos = 0.5,above] {Größe 1}; Bekomme ich die Fehlermeldung: ! Package PGF Math Error: Unknown function `KBH1' (in 'KBH1 150 A').See the PGF Math package documentation for explanation.Type H <return> for immediate help.... \end{axis} ! Package PGF Math Error: Unknown function `KBH1' (in 'KBH1 150 A').See the PGF Math package documentation for explanation.Type H <return> for immediate help.... \end{axis} Wie bekomme ich es also hin, dass ich ein `\draw` mit `symbolic x-coords` hinbekomme damit ich sowohl die Artikelbezeichnungen auf der x-Achse `x`-Achse erhalte als auch die horizontalen Linien über den Säulen behalte? Im Prinzip brauche ich eine Kombination aus beiden Diagrammen. Nachtrag: An den Leerzeichen in den symbolic x-coords `symbolic x-coords` liegt es nicht, das habe ich bereits getestet mit dem gleichen Fehlermeldungen als Ergebnis. [1]: http://texwelt.de/wissen/upfiles/2016-06-25_19_09_42-test.pdf_-_Adobe_Acrobat_Reader_DC.png [2]: http://texwelt.de/wissen/upfiles/2016-06-25_19_08_29-test.pdf_-_Adobe_Acrobat_Reader_DC.pnghttp://texwelt.de/wissen/upfiles/2016-06-25_19_09_42-test.pdf_-_Adobe_Acrobat_Reader_DC_1.png [3]: http://texwelt.de/wissen/upfiles/2016-06-25_19_08_29-test.pdf_-_Adobe_Acrobat_Reader_DC_1.png
Klicke auf Einblenden/Ausblenden von Überarbeitungen 4

25 Jun '16, 19:32

MG812's gravatar image

MG812
4548

Problem mit symbolic x coords und \draw

Hallo zusammen, ich habe folgenden funktionierenden Code für ein Diagramm: \documentclass[12pt,a4paper]{report} \usepackage[utf8]{inputenc} \usepackage[german]{babel} \usepackage[T1]{fontenc} \usepackage{amsmath} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{makeidx} \usepackage{graphicx} \usepackage{lmodern} \usepackage[left=2cm,right=2cm,top=2cm,bottom=2cm]{geometry} \usepackage[miktex]{gnuplottex} \usepackage{pgfplots} \usepackage{framed} \usepackage[per=slash, decimalsymbol=comma, loctolang={DE:ngerman,UK:english}, ]{siunitx} %SI-Einheiten richtig darstellen \pgfplotsset{compat=newest} \usetikzlibrary{patterns} \usepackage{siunitx} \usepackage{nicefrac} \usepgfplotslibrary{units} \pgfkeys{/pgf/number format/.cd ,use comma ,set thousands separator={ }} \pgfplotsset{ every axis label/.append style={font=\scriptsize}, every tick label/.append style={font=\scriptsize}} % globale Einstellungen. \pgfplotsset{scaled y ticks=false} %keine wiss. notation bei achsen \begin{document} % nur eine Säule anzeigen \pgfplotsset{/pgfplots/ybar legend/.style={ /pgfplots/legend image code/.code={\draw[##1,/tikz/.cd,bar width=3pt,yshift=-0.2em,bar shift=0pt] plot coordinates {(0cm,0.8em) };}, }} begin{figure}[h!] \centering \begin{tikzpicture} \begin{axis}[ width=\textwidth, height=8cm, ymax = 70000, legend style={at={(0.5,-0.5)}, anchor=north,legend columns=-1, draw=none}, ybar, xtick = {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, x tick label style={rotate=90}, %Achsenbeschriftung drehen grid, grid style={dashed}, ] \addplot[pattern = north west lines, pattern color = blue] coordinates { (1,1069) (2, 486) (3, 314) (4, 671) (5, 2566) (6, 1324) (7, 912) (8, 4518) (9, 2259) (10, 1539) (11, 1086) (12, 2060) (13, 1539) (14, 1086)}; \addplot[pattern = north west lines, pattern color = gray] coordinates { (1,5051) (2, 2268) (3, 1420) (4, 1033) (5, 14948) (6, 8000) (7, 5464) (8, 45249) (9, 25189) (10, 17212) (11, 12225) (12, 54645) (13, 41152) (14, 29155)}; \draw [black,thick] (0.8,10000) --(4.2,10000) node[pos = 0.5,above] {Größe 1}; \draw [black,thick] (4.8,20000) --(7.2,20000) node[pos = 0.5,above] {Größe 2}; \draw [black,thick] (7.8,50000) --(11.2,50000) node[pos = 0.5,above] {Größe 3}; \draw [black,thick] (11.8,60000)--(14.2,60000) node[pos = 0.5,above] {Größe 4}; \legend{alt,neu} \end{axis} \end{tikzpicture} \end{figure} \end{document} Damit erhalte ich folgendes Diagramm: ![alt text][1] Anstatt mit Zahlen möchte ich die x-Achse jedoch mit verschiedenen Artikelbezeichnungen beschriften, so wie hier: ![alt text][2] Normalerweise geht das ja dann über symbolic x-coords. Also hiermit: symbolic x coords={KBH1 150 A, KBH1 150 B, KBH1 150 C, KBH1 150 D, KBH1 250 B, KBH1 250 C, KBH1 250 D, KBH1 350 A, KBH1 350 B, KBH1 350 C, KBH1 350 D, KBH1 450 B, KBH1 450 C, KBH1 450 D}, xtick={KBH1 150 A, KBH1 150 B, KBH1 150 C, KBH1 150 D, KBH1 250 B, KBH1 250 C, KBH1 250 D, KBH1 350 A, KBH1 350 B, KBH1 350 C, KBH1 350 D, KBH1 450 B, KBH1 450 C, KBH1 450 D}, Nur dann bekomme ich logischerweise eine Fehlermeldung für `\draw` da es die x-Koordinaten nicht kennt. Schreibe ich nun aber: \draw [black,thick] (KBH1 150 A,10000) --(KBH1 150 D,10000) node[pos = 0.5,above] {Größe 1}; Bekomme ich die Fehlermeldung: ! Package PGF Math Error: Unknown function `KBH1' (in 'KBH1 150 A').See the PGF Math package documentation for explanation.Type H <return> for immediate help.... \end{axis} ! Package PGF Math Error: Unknown function `KBH1' (in 'KBH1 150 A').See the PGF Math package documentation for explanation.Type H <return> for immediate help.... \end{axis} Wie bekomme ich es also hin, dass ich ein `\draw` mit `symbolic x-coords` hinbekomme damit ich sowohl die Artikelbezeichnungen auf der x-Achse erhalte als auch die horizontalen Linien über den Säulen behalte? Im Prinzip brauche ich eine Kombination aus beiden Diagrammen. Nachtrag: An den Leerzeichen in den symbolic x-coords liegt es nicht, das habe ich bereits getestet mit dem gleichen Fehlermeldungen als Ergebnis. [1]: http://texwelt.de/wissen/upfiles/2016-06-25_19_09_42-test.pdf_-_Adobe_Acrobat_Reader_DC.png [2]: http://texwelt.de/wissen/upfiles/2016-06-25_19_08_29-test.pdf_-_Adobe_Acrobat_Reader_DC.png
Klicke auf Einblenden/Ausblenden von Überarbeitungen 3

25 Jun '16, 19:26

MG812's gravatar image

MG812
4548

Klicke auf Einblenden/Ausblenden von Überarbeitungen 2

25 Jun '16, 19:18

MG812's gravatar image

MG812
4548

Klicke auf Einblenden/Ausblenden von Überarbeitungen 1

25 Jun '16, 19:14

MG812's gravatar image

MG812
4548