von Stefan Kottwitz » Fr 21. Mär 2025, 21:39
Hallo,
nimm für die Abbildung am besten eine figure-Umgebung, und darin \centering so dass sie zentriert ist. Natürlich muss das Bild auch in die Textbreite reinpassen, ggf. skaliere mit einem Faktor. Weiterhin nimm \caption für die Überschrift, statt es in das Bild einzuzeichnen.
Hier ist das einmal dargestellt, auch die linke Achse repariert:
\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage{microtype}
\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{positioning}
\usepackage{xcolor}
\definecolor{myblue}{HTML}{92dcec}
\usepackage[format=hang,labelfont=bf]{caption}
\begin{document}
\begin{figure}[htbp!]
\centering
\caption{Wachstumsrate des realen BIP für die zehn
bevölkerungsreichsten Staaten der EU 2005};
\begin{tikzpicture}[scale=0.7]
\draw (0cm,0cm) -- (15.5cm,0cm); %Abzisse
\draw (0cm,0cm) -- (0cm,-0.1cm); %linkes Ende der Abzisse
\draw (15.5cm,0cm) -- (15.5cm,-0.1cm); %rechtes Ende der Abzisse
\draw (-0.1cm,0cm) -- (-0.1cm,6cm); %Ordinate
\draw (-0.1cm,0cm) -- (-0.2cm,0cm); %unteres Ende der Ordinate
\draw (-0.1cm,4.5cm) -- (-0.1cm,6cm) node [above left=2mm and 1mm] {\%}; %oberes Ende der Ordinate
\foreach \x in {1,...,6} %Hilfslinien
\draw[gray!50, text=black] (-0.2 cm,\x cm) -- (15.5 cm,\x cm)
node at (-0.5 cm,\x cm) {\x}; %Beschriftung der Hilfslinien
\foreach \x/\y/\country in {0.5/4.1/Rumänien, %\x ist Anfang der Säulen
2/3.7/Griechenland, %\y ist Höhe der Säulen
3.5/3.5/Spanien,
5/3.5/Polen,
6.5/1.9/Großbritannien,
8/1.5/Niederlande,
9.5/1.2/Frankreich,
11/0.9/Deutschland,
12.5/0.5/Portugal,
14/0.1/Italien}
{
\draw[fill=myblue] (\x cm,0cm) rectangle (1cm+\x cm,\y cm) %die Säulen
node at (0.5cm + \x cm,\y cm + 0.3cm) {\y}; %die Prozente über den Säulen
\node[rotate=45, left] at (0.6 cm +\x cm,-0.1cm) {\country}; %Säulenbeschriftung
};
\end{tikzpicture}
\end{figure}
\end{document}
Ein bisschen reparieren ist gar kein Problem. Falls Du es aber wesentlich anders haben möchtest, also die vertikale Achse von 10% bis 100% und damit die Koordinaten der Labels anders ausrechnen müsstest (die Werte mit max. 4.1 sind aber auch sehr klein vergleichen mit einer Skala bis 100), empfehle ich die Verwendung von pgfplots
Bar charts.
Stefan
Hallo,
nimm für die Abbildung am besten eine figure-Umgebung, und darin \centering so dass sie zentriert ist. Natürlich muss das Bild auch in die Textbreite reinpassen, ggf. skaliere mit einem Faktor. Weiterhin nimm \caption für die Überschrift, statt es in das Bild einzuzeichnen.
Hier ist das einmal dargestellt, auch die linke Achse repariert:
[code]\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage{microtype}
\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{positioning}
\usepackage{xcolor}
\definecolor{myblue}{HTML}{92dcec}
\usepackage[format=hang,labelfont=bf]{caption}
\begin{document}
\begin{figure}[htbp!]
\centering
\caption{Wachstumsrate des realen BIP für die zehn
bevölkerungsreichsten Staaten der EU 2005};
\begin{tikzpicture}[scale=0.7]
\draw (0cm,0cm) -- (15.5cm,0cm); %Abzisse
\draw (0cm,0cm) -- (0cm,-0.1cm); %linkes Ende der Abzisse
\draw (15.5cm,0cm) -- (15.5cm,-0.1cm); %rechtes Ende der Abzisse
\draw (-0.1cm,0cm) -- (-0.1cm,6cm); %Ordinate
\draw (-0.1cm,0cm) -- (-0.2cm,0cm); %unteres Ende der Ordinate
\draw (-0.1cm,4.5cm) -- (-0.1cm,6cm) node [above left=2mm and 1mm] {\%}; %oberes Ende der Ordinate
\foreach \x in {1,...,6} %Hilfslinien
\draw[gray!50, text=black] (-0.2 cm,\x cm) -- (15.5 cm,\x cm)
node at (-0.5 cm,\x cm) {\x}; %Beschriftung der Hilfslinien
\foreach \x/\y/\country in {0.5/4.1/Rumänien, %\x ist Anfang der Säulen
2/3.7/Griechenland, %\y ist Höhe der Säulen
3.5/3.5/Spanien,
5/3.5/Polen,
6.5/1.9/Großbritannien,
8/1.5/Niederlande,
9.5/1.2/Frankreich,
11/0.9/Deutschland,
12.5/0.5/Portugal,
14/0.1/Italien}
{
\draw[fill=myblue] (\x cm,0cm) rectangle (1cm+\x cm,\y cm) %die Säulen
node at (0.5cm + \x cm,\y cm + 0.3cm) {\y}; %die Prozente über den Säulen
\node[rotate=45, left] at (0.6 cm +\x cm,-0.1cm) {\country}; %Säulenbeschriftung
};
\end{tikzpicture}
\end{figure}
\end{document}[/code]
Ein bisschen reparieren ist gar kein Problem. Falls Du es aber wesentlich anders haben möchtest, also die vertikale Achse von 10% bis 100% und damit die Koordinaten der Labels anders ausrechnen müsstest (die Werte mit max. 4.1 sind aber auch sehr klein vergleichen mit einer Skala bis 100), empfehle ich die Verwendung von pgfplots [url=https://tikz.dev/pgfplots/reference-2dplots#sec-4.5.4]Bar charts[/url].
Stefan