Ich verwende den unten stehenden Code, um ein Diagramm zu erstellen. Unten befinden sich zwei Klammern mit der Bezeichnung $t_1$ und $t_2$. Die Zahlen 1 und 2 sind jedoch defekt (der untere Teil wird nicht angezeigt). Was ist falsch an meinem Code? Ich habe auch versucht, dieses Problem zu lösen, aber \pgfplotsextra
ohne Erfolg.
Außerdem möchte ich in Bezug auf den folgenden Code einfügen, .style
dass alle Graphen eine Grenze haben, die vergrößert wird umFeste Distanz, dh1 cmWenn ich die Frage richtig versteheBei Verwendung symbolischer Koordinaten Grenzen um den absoluten Wert vergrößernstimmt, das ist doch gar nicht möglich?
\documentclass[12pt,a7paper,landscape]{scrartcl}
\usepackage{pgfplots}
\pgfplotsset{standard/.style={axis x line=middle,axis y line=middle,every axis x label/.style={at={(current axis.right of origin)},anchor=north},every axis y label/.style={at={(current axis.above origin)},anchor=east}}}
\begin{document}
\begin{tikzpicture}
\begin{axis}[standard,width=8cm,height=5cm,enlarge x limits=0.11,enlarge y limits=0.19,xlabel=$t$,ylabel=$v$,xtick={20,60},xticklabels={,},ytick={25},yticklabels={$v'$}]
\addplot[thick,color=black] coordinates { (0,0) (20,25) (60,25) };
\addplot[dashed,very thin,color=black] coordinates { (20,0) (20,25) (0,25) };
\addplot[dashed,very thin,color=black] coordinates { (60,0) (60,25) };
\node at (axis cs:13.3,8.3) {$s_1$};
\node at (axis cs:40,12.5) {$s_2$};
\draw [decorate,decoration={brace,mirror,raise=2pt}] (axis cs:0,0) -- (axis cs:20,0) node [midway,below=1pt] {$t_1$};
\draw [decorate,decoration={brace,mirror,raise=2pt}] (axis cs:20,0) -- (axis cs:60,0) node [midway,below=1pt] {$t_2$};
\end{axis}
\end{tikzpicture}
\end{document}
Antwort1
Der Text wird am Rand des Achsenbereichs abgeschnitten. Um dies zu verhindern, können Sie entweder den Schlüssel clip=false
für die axis
Optionen angeben oder die \draw
Befehle in das Feld einfügen after end axis/.code={...}
, um die Anmerkungen außerhalb des Abschneidebereichs zu zeichnen:
\documentclass[12pt,a7paper,landscape]{scrartcl}
\usepackage{pgfplots}
\pgfplotsset{standard/.style={axis x line=middle,axis y line=middle,every axis x label/.style={at={(current axis.right of origin)},anchor=north},every axis y label/.style={at={(current axis.above origin)},anchor=east}}}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
standard,
width=8cm,height=5cm,
enlarge x limits=0.11,enlarge y limits=0.19,
xlabel=$t$,ylabel=$v$,
xtick={20,60},xticklabels={,},
ytick={25},yticklabels={$v'$},
after end axis/.code={
\draw [decorate,decoration={brace,mirror,raise=2pt}] (axis cs:0,0) -- (axis cs:20,0) node [midway,below=1pt] {$t_1$};
\draw [decorate,decoration={brace,mirror,raise=2pt}] (axis cs:20,0) -- (axis cs:60,0) node [midway,below=1pt] {$t_2$};
}
]
\addplot[thick,color=black] coordinates { (0,0) (20,25) (60,25) };
\addplot[dashed,very thin,color=black] coordinates { (20,0) (20,25) (0,25) };
\addplot[dashed,very thin,color=black] coordinates { (60,0) (60,25) };
\node at (axis cs:13.3,8.3) {$s_1$};
\node at (axis cs:40,12.5) {$s_2$};
\end{axis}
\end{tikzpicture}
\end{document}