Hallo, ich würde gern eine Achsenbeschriftung wie auf dem Bild in meinem Diagramm haben. Leider habe ich keine Ahnung, wie ich die Achsen normal beschriften kann und den vorletzten Wert durch eine Einheit ersetzen kann. Habt ihr eine Idee? Crosspost: goLatex Hier das Minimalbeispiel: Öffne in Overleaf
\documentclass[margin=10mm]{standalone} \usepackage{siunitx} \usepackage{pgfplots} \pgfplotsset{width=16cm,compat=1.15} \usepackage{amsmath} \begin{document} \begin{tikzpicture} \begin{axis}[ xlabel=Konzentration in $\si{\percent}$ $\xrightarrow{\hspace*{1cm}}$, ylabel= Oberflächenspannung in $\si{\milli\newton\per\meter}$ $\xrightarrow{\hspace*{1cm}}$, ] \addplot[mark=o,error bars/.cd,y dir=both,y explicit]coordinates { (0,68.40891501) +- (0,4.778953312) (20,63.98903632) +- (0,4.115686076) (40,60.64486555) +- (0,6.848451706) (60,62.39588189) +- (0,7.741357204) }; \legend{Messung\\} \end{axis} \end{tikzpicture} \end{document} gefragt 08 Nov '17, 22:10 Patrick1990 |
Notfalls kannst Du die Achsenbeschriftung immer von Hand machen. Dabei geben die Optionen Öffne in Overleaf
\documentclass[margin=10mm]{standalone} \usepackage{siunitx} \usepackage{pgfplots} \pgfplotsset{width=16cm,compat=1.15} \usepackage{amsmath} \begin{document} \begin{tikzpicture} \begin{axis}[ xlabel=Konzentration in $\si{\percent}$ $\xrightarrow{\hspace*{1cm}}$, ylabel= Oberflächenspannung in $\si{\milli\newton\per\meter}$ $\xrightarrow{\hspace*{1cm}}$, xtick={0,20,40,60}, xticklabels={0,20,40,\si{\milli\A}}, ytick={50,55,...,75}, yticklabels={50,55,60,65,\si{\milli\A},75}, ] \addplot[mark=o,error bars/.cd,y dir=both,y explicit]coordinates { (0,68.40891501) +- (0,4.778953312) (20,63.98903632) +- (0,4.115686076) (40,60.64486555) +- (0,6.848451706) (60,62.39588189) +- (0,7.741357204) }; \legend{Messung} \end{axis} \end{tikzpicture} \end{document} Man kann das ganze natürlich auch halbautomatisch machen, indem man einen Befehl per Öffne in Overleaf
\documentclass[margin=10mm]{standalone} \usepackage{siunitx} \usepackage{pgfplots} \pgfplotsset{width=16cm,compat=1.15} \usepackage{amsmath} \newcommand*{\usesymbolfor}[2]{% \pgfmathifthenelse{\tick==#2}{1}{0}% \ifnum \pgfmathresult=1\relax \si{#1}\else $\pgfmathprintnumber{\tick}$\fi }% \begin{document} \begin{tikzpicture} \begin{axis}[ xlabel=Konzentration in $\si{\percent}$ $\xrightarrow{\hspace*{1cm}}$, ylabel= Oberflächenspannung in $\si{\milli\newton\per\meter}$ $\xrightarrow{\hspace*{1cm}}$, xtick={0,20,...,60}, xticklabel={\usesymbolfor{\milli\A}{40}}, ytick={50,55,...,75}, yticklabel={\usesymbolfor{\milli\A}{70}}, ] \addplot[mark=o,error bars/.cd,y dir=both,y explicit]coordinates { (0,68.40891501) +- (0,4.778953312) (20,63.98903632) +- (0,4.115686076) (40,60.64486555) +- (0,6.848451706) (60,62.39588189) +- (0,7.741357204) }; \legend{Messung} \end{axis} \end{tikzpicture} beantwortet 09 Nov '17, 07:59 gast3 Danke, das wusste ich bereits. Hätte mich eventuell besser ausdrücken sollen. Ich würde dieses gern automatisch erstellt haben. Ich habe es bereits geschafft die ticks mit einer for-Schleife zu erstellen und den vorletzten auszulassen. Wenn ich noch eine Schleife mit ticklabels mache und den vorletzten Wert durch ein Wort ergänze funktioniert es nicht ganz, denn alle Sticklabel werden an der Stelle des ersten ticklabels der jeweiligen Achse angezeigt (und nicht an den zugehörigen ticks). Also Eingabe sollen bestenfalls nur Startwert, Endwert, Inkrement und Einheit der jeweiligen Achse sein.
(09 Nov '17, 08:12)
Patrick1990
@Patrick1990 Das wäre jetzt eine Folgefrage und natürlich solltet du dann ein passendes VM zeigen, das ggf. auch verdeutlicht, was du (erfolglos) probiert hast.
(09 Nov '17, 10:33)
gast3
@Patrick1990 Musst Du viele solcher Diagramme automatisiert erstellen? Wenn es eh nur ein oder zwei in der Arbeit sind, würde ich mir den Kopf nicht darüber zerbrechen sondern es einfach so manuell machen. Sieht ja genauso aus. Apropos: ich finde es spontan als für den Leser eher irreführend, wenn die Einheit an Stelle eines echten Wertes steht, auch noch genau an dem Tick wo ein Wert stehen müsste. Für mich sollten genau gleich aussehende Dinge die gleiche Bedeutung haben und eine Legende sich nicht als Wert tarnen. Das kann man sogar übersehen wenn man es sucht.
(09 Nov '17, 12:08)
stefan ♦♦
Danke, so reicht es mir.
(09 Nov '17, 12:42)
Patrick1990
|
Wusste ich doch, dass ich so etwas heute morgen schon einmal gesehen habe …. Hinweis: Crossposts sind hier ausdrücklich erlaubt. Es wird aber dringend darum gebeten, sie miteinander zu verlinken. In anderen Foren ist das entweder absolute Pflicht oder Crossposts sind sogar komplett verboten. Meist werden sie mit Verlinkung toleriert, während sie ohne für großen Unmut sorgen.