Achsenbezeichnungen nicht skalieren

Tabellen und Grafiken erstellen und anordnen


kannstmasehn
Forum-Century
Forum-Century
Beiträge: 165
Registriert: Mo 5. Mai 2014, 16:55

Achsenbezeichnungen nicht skalieren

Beitrag von kannstmasehn »

Hallo,

ich möchte zwei Graphen nebeneinander in einer Zeile anordnen. Wenn ich diese nun über tikzpicture skaliere, verändert sich auch die Schriftgröße der Achsenbezeichnungen. Wieso bleibt die Schriftgröße nicht erhalten? Das muss ja ein Problem von Subfloat sein, weil es ohne subfloat funktioniert. Wie kann ich das hinbekommen, dass die Achsenbezeichnungen die gleiche Schriftgröße haben wie der restliche Text im Dokument?
\documentclass{article}
\usepackage{pgfplots}
\usepackage[caption=false]{subfig}
\usepackage{siunitx}
\usepackage{blindtext}

\begin{document}
	
\blindtext

\begin{figure}[tbph]
	\centering
	\subfloat[Eins]{
		\begin{tikzpicture}[scale=0.6,baseline=(current axis.south)]
		
		\begin{axis}[%
		scale only axis,
		xlabel=Xxx,
		ylabel=Yyy,
		]
		
		\addplot table[row sep=crcr]{%
			0 0\\
			1 1\\
		};
		\addlegendentry{1}
		
		\addplot table[row sep=crcr]{%
			0 0\\
			2 1\\
		};
		\addlegendentry{2}
		
		\addplot table[row sep=crcr]{%
			0 0\\
			3 2\\
		};
		\addlegendentry{3}

		
		\end{axis}
		\end{tikzpicture}%
	}
	\subfloat[Zwei]{
		\begin{tikzpicture}[scale=0.6,baseline=(current axis.south)]
		
		\begin{axis}[%
			scale only axis,
		xlabel={Xxx},
		ylabel=Yyy,
		]
		\addplot table[row sep=crcr]{%
			0 0\\
			1 1\\
		};
		\addlegendentry{1}
		
		\addplot table[row sep=crcr]{%
			0 0\\
			2 1\\
		};
		\addlegendentry{2}
		
		\addplot table[row sep=crcr]{%
			0 0\\
			3 2\\
		};
		\addlegendentry{3}
		
		\end{axis}
		\end{tikzpicture}%		
	}	
\end{figure}
	
\end{document}
Vielen Dank im Voraus.

Gast

Beitrag von Gast »

\subfloat hat bei mir keinen Einfluss auf die Achsenbeschriftung.

BTW: Du solltest immer direkt nach dem Laden von pgfplots Option compat einstellen. Siehe dazu die [d]pgfplots[/d]-Anleitung.

kannstmasehn
Forum-Century
Forum-Century
Beiträge: 165
Registriert: Mo 5. Mai 2014, 16:55

Beitrag von kannstmasehn »

Hmm stimmt, bei mir auch nicht. Wie kann ich trotzdessen die Schriftgröße anpassen innerhalb des floats?

Gast

Beitrag von Gast »

Du könntest auf die Skalierung der tikzpicture einfach verzichten und stattdessen der axis-Umgebung eine feste Breite oder eine Breite in Abhängigkeit der \axisdefaultwidth geben. Die Höhe kann dann wiederum proportional angepasst werden.
\documentclass{article}
\usepackage{pgfplots}
\usepackage[caption=false]{subfig}
\usepackage{siunitx}
\usepackage{blindtext}

\begin{document}
   
\blindtext

\begin{figure}[tbph]
   \centering
   \subfloat[Eins]{
      \begin{tikzpicture}[baseline=(current axis.south)]
      
      \begin{axis}[%
      xlabel=Xxx,
      ylabel=Yyy,
      width=0.7*\axisdefaultwidth,
      height={}
      ]
      
      \addplot table[row sep=crcr]{%
         0 0\\
         1 1\\
      };
      \addlegendentry{1}
      
      \addplot table[row sep=crcr]{%
         0 0\\
         2 1\\
      };
      \addlegendentry{2}
      
      \addplot table[row sep=crcr]{%
         0 0\\
         3 2\\
      };
      \addlegendentry{3}

      
      \end{axis}
      \end{tikzpicture}%
   }
   \subfloat[Zwei]{
      \begin{tikzpicture}[baseline=(current axis.south)]
      
      \begin{axis}[%
         width=0.7*\axisdefaultwidth,
         height={},
      xlabel={Xxx},
      ylabel=Yyy,
      ]
      \addplot table[row sep=crcr]{%
         0 0\\
         1 1\\
      };
      \addlegendentry{1}
      
      \addplot table[row sep=crcr]{%
         0 0\\
         2 1\\
      };
      \addlegendentry{2}
      
      \addplot table[row sep=crcr]{%
         0 0\\
         3 2\\
      };
      \addlegendentry{3}
      
      \end{axis}
      \end{tikzpicture}%      
   }   
\end{figure}
   
\end{document}

kannstmasehn
Forum-Century
Forum-Century
Beiträge: 165
Registriert: Mo 5. Mai 2014, 16:55

Beitrag von kannstmasehn »

Danke dir!

Antworten