Wie kann man ein breites Diagramm erstellen, ohne alle Beschriftungen zu beeinträchtigen?

Wie kann man ein breites Diagramm erstellen, ohne alle Beschriftungen zu beeinträchtigen?

Bisher habe ich resizebox und tikzpicture xscale/yscale ausprobiert. Sie strecken alle Beschriftungen (einschließlich des Titels) und lassen sie sehr hässlich aussehen. Gibt es eine Möglichkeit, dies zu vermeiden?

Oben ist, was ich bekomme, unten ist, was ich will (aus Ahorn gefertigt): Codebeispiel:

\documentclass[landscape]{article}
\usepackage{pgfplots}
\usepackage{tabularx}
\usepackage[margin=0.1in]{geometry}
\pgfplotsset{every axis x label/.append style={font=\tiny, yshift=0.8em}, every axis y label/.append style={font=\tiny, yshift=-2em}, every tick label/.append style={font=\tiny}}
\begin{document}
\newpage

\begin{figure}[h]
\centering
\begin{tikzpicture}[yscale=2.5, xscale = 3.5]
\begin{axis}[xlabel={t (fs)},
ylabel={C (eV)},
xtick={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25},
enlargelimits = false,
ymajorgrids=true,
grid style=solid,
title = {C(t)}]
\addplot[color=red, mark=none]
coordinates {
(0,80)
(1,0)
(2,-10)
(3,0)
(4,60)
(5,70)
(6,60)
(7,0)
(8,-10)
(9,0)
(10,50)
(11,60)
(12,50)
(13,0)
(14,-10)
(15,0)
(16,40)
(17,50)
(18,40)
(19,0)
(20,-10)
(21,0)
(22,30)
(23,40)
(24,30)
(25,0)
};
\end{axis}
\end{tikzpicture}
\end{figure}
\end{document}

Antwort1

Wie Sie lesen könnenHierSie können einfach scale only axisdie Größe des gesamten Diagramms ändern, nicht jedoch die Beschriftungen skalieren.

Zwei: Mit der Option wird ein glatter Plot erreicht smooth. Und um Grenzen zu haben, können Sie xmin, xmax, yminund verwenden ymax.

Skalierung

Code (ich habe ihn entfernt, \tinyum den Effekt wirklich sichtbar zu machen):

\documentclass[landscape]{article}
\usepackage{pgfplots}
\usepackage{tabularx}
\usepackage[margin=0.1in]{geometry}
%\pgfplotsset{every axis x label/.append style={font=\tiny, yshift=0.8em}, every axis y label/.append style={font=\tiny, yshift=-2em}, every tick label/.append style={font=\tiny}}
\begin{document}
\newpage

\begin{figure}[h]
\centering
\begin{tikzpicture}%[yscale=2.5, xscale = 3.5]
\begin{axis}[height=.7\paperheight,width=.6\linewidth,scale only axis,xlabel={t (fs)},
ylabel={C (eV)},
xtick={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25},
enlargelimits = false,
ymajorgrids=true,
grid style=solid,
title = {C(t)}]
\addplot[color=red, mark=none,smooth]
coordinates {
(0,80)
(1,0)
(2,-10)
(3,0)
(4,60)
(5,70)
(6,60)
(7,0)
(8,-10)
(9,0)
(10,50)
(11,60)
(12,50)
(13,0)
(14,-10)
(15,0)
(16,40)
(17,50)
(18,40)
(19,0)
(20,-10)
(21,0)
(22,30)
(23,40)
(24,30)
(25,0)
};
\end{axis}
\end{tikzpicture}
\end{figure}
\end{document}

verwandte Informationen