Arial/Pgfplot: Text hat andere Dicke als Zahlen an der Achse

Tabellen und Grafiken erstellen und anordnen


Luke

Arial/Pgfplot: Text hat andere Dicke als Zahlen an der Achse

Beitrag 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

markusv
Forum-Meister
Forum-Meister
Beiträge: 947
Registriert: Do 3. Sep 2015, 17:20
Wohnort: Leipzig

Beitrag 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!
Wäre Microsoft Word für das Schreiben von Büchern entwickelt worden,
würde es Microsoft Book heißen.

Unkomplizierte und schnelle LaTeX-Hilfe, bspw. Erstellung von Vorlagen und Bewerbungen:
Help-LaTeX@web.de

Luke

Beitrag 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

Benutzeravatar
u_fischer
Forum-Meister
Forum-Meister
Beiträge: 4266
Registriert: Do 22. Nov 2012, 11:09
Kontaktdaten:

Beitrag von u_fischer »

helvet (das benützt einen Helvetica-clon) is übrigens nicht Arial

https://tex.stackexchange.com/a/309120/2388

https://www.webdesignerdepot.com/2013/0 ... ifference/

Luke

Beitrag 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

Bartman
Forum-Meister
Forum-Meister
Beiträge: 2456
Registriert: Do 16. Jul 2009, 21:41
Wohnort: Hessische Provinz

Beitrag 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

Antworten