Seite 1 von 1
Arial/Pgfplot: Text hat andere Dicke als Zahlen an der Achse
Verfasst: Fr 8. Dez 2017, 10:11
von Luke
Hallo,
ich erstelle eine Dokumentation, bei der die Schriftart Arial sein soll. Dazu habe ich im Internet folgende 2 Zeilen gefunden:
\usepackage{helvet}
\renewcommand{\familydefault}{\sfdefault}
Das klappt soweit. Nun möchte ich aber ein pgfplot machen. Das Problem hierbei ist, dass der Text der Achsenbeschriftung dicker ist als die Zahlen an der Achse selbst, wie das folgende Minimalbeispiel zeigt:
\documentclass[a4paper]{article}
\usepackage[german]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
%Schiftart Arial
\usepackage{helvet}
\renewcommand{\familydefault}{\sfdefault}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
xlabel={Achsenbeschriftung -- 0.8}]
\addplot [] table[x=t,y=s] {
t s
0 1
1 2
};
\end{axis}
\end{tikzpicture}
\end{document}
Ich möchte aber, dass die Achsbeschriftung die selbe Schriftdicke hat wie die Zahlen an der Achse.
Wie kann ich dieses Problem beheben?
Vielen Dank,
Gruß Luke
Verfasst: Fr 8. Dez 2017, 11:17
von markusv
Hallo Luke,
der Titel hat die gleiche Schrift wie im Text. Die Zahlen haben dagegen die Schrift im Mathematik-Modus. Damit ergeben sich 2 Möglichkeiten: die Zahlen im Diagramm an die Schrift anpassen oder den Titel an die Zahlen anpassen:
Variante 1 mit
sansmath und nach
https://tex.stackexchange.com/questions ... plots?lq=1 \documentclass[a4paper]{article}
\usepackage[ngerman]{babel} %ngerman für Neue dt. Rechtschreibung
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
%Schiftart Arial
\usepackage{helvet}
\renewcommand{\familydefault}{\sfdefault}
\usepackage{pgfplots}
\usepackage{sansmath}
\pgfplotsset{
compat=newest,
tick label style = {font=\sansmath\sffamily},
}
\begin{document}
Zahlen im Textmodus: 1.8 2 1
Zahlen im Mathematikmodus: \(1.8~2~1\)
\bigskip
\begin{tikzpicture}
\begin{axis}[
xlabel={Achsenbeschriftung -- 0.8}]
\addplot [] table[x=t,y=s] {
t s
0 1
1 2
};
\end{axis}
\end{tikzpicture}
\end{document}
Variante 2
\documentclass[a4paper]{article}
\usepackage[ngerman]{babel} %ngerman für Neue dt. Rechtschreibung
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
%Schiftart Arial
\usepackage{helvet}
\renewcommand{\familydefault}{\sfdefault}
\usepackage{pgfplots}
\usepackage{sansmath}
\pgfplotsset{
compat=newest,
every axis label/.append style={font={\rmfamily}},
}
\begin{document}
Zahlen im Textmodus: 1.8 2 1
Zahlen im Mathematikmodus: \(1.8~2~1\)
\bigskip
\begin{tikzpicture}
\begin{axis}[
xlabel={Achsenbeschriftung -- 0.8}]
\addplot [] table[x=t,y=s] {
t s
0 1
1 2
};
\end{axis}
\end{tikzpicture}
\end{document}
PS: Super
Minimalbeispiel!
Verfasst: Fr 8. Dez 2017, 11:24
von Luke
Hallo Markus,
vielen Dank für deine Antwort. Es ist genau das was ich wollte. Ich habe mich für Variante 1 entschieden.
Danke,
Gruß Luke
Verfasst: Fr 8. Dez 2017, 12:37
von u_fischer
Verfasst: Mo 11. Dez 2017, 07:59
von Luke
Hallo Ulrike,
danke für deine Antwort. Es sieht tatsächlich anderes aus als das richtige Arial. Aber gibt es eine anderen Möglichkeit als
\usepackage{fontspec}
\setmainfont{Arial}
?
Ich kann diese zwar mit XeLaTeX verwenden und das klappt auch, aber dann habe ich wieder das ursprüngliche Problem, dass die Zahlen an den Achsen nicht Arial sind.
Gibts dafür auch eine Lösung?
\documentclass[a4paper]{article}
\usepackage[german]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
%Schiftart Arial
\usepackage{fontspec}
\setmainfont{Arial}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
xlabel={Achsenbeschriftung -- 0.8}]
\addplot [] table[x=t,y=s] {
t s
0 1
1 2
};
\end{axis}
\end{tikzpicture}
\end{document}
Danke,
Gruß Luke
Verfasst: Di 12. Dez 2017, 15:15
von Bartman
Wie steige ich auf Xe/LuaLaTeX um?
Beachte bitte die Änderung von markusv beim Laden von
babel.
\documentclass[border=5pt, preview]{standalone}
\usepackage{unicode-math}% lädt fontspec
\setmainfont{Arial}
\usepackage[ngerman]{babel}
\usepackage{icomma}
\usepackage{pgfplots}
\pgfplotsset{
compat=newest,
tick label style={
/pgf/number format/assume math mode,
/pgf/number format/use comma
}
}
\begin{document}
Zahlen im Textmodus: 1,8 2 1
Zahlen im Mathematikmodus: $1,8$ $2$ $1$
\bigskip
\begin{tikzpicture}
\begin{axis}[
xlabel={Achsenbeschriftung -- 0,8}]
\addplot [
mark=none
] table [x=t, y=s] {
t s
0 1
1 2
};
\end{axis}
\end{tikzpicture}
\end{document}
Quelle:
Antwort von Paul Gessler