Horizontales Balkendiagramm

Tabellen und Grafiken erstellen und anordnen


pauabaer
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 63
Registriert: Sa 19. Sep 2015, 00:17

Beitrag von pauabaer »

Also ersteres werde ich anders lösen. Werde nur einen Eintrag in einer anderen Farbe machen. Soweit so gut..

Für das integrieren beider Diagramme als Subfigures habe ich folgendes Minimalbeispiel:
\documentclass[
	paper=A4,					% A4 Seite
	pagesize=auto,				% Setzen der korrektern Papiergröe für Ausgabemedien
	fontsize=11pt,				% Schriftgröße
	BCOR=12mm,				% Bindekorrektur: bei Buch normalerweise 12mm
	twoside=false,				% Layout für beidseitigen Druck
	headsepline,					% Kopfzeile mit horizontaler Liniel
	toc=listof,					% Tabellen/Abbildungs-Verzeichnisse im Inhaltsverzeichnis aufführen
	toc=bibliography,				% Literaturverzeichnis im Inhaltsverzeichnis ohne Nummer (mit Nummer: bibliographynumbered)	
	toc=chapterentrywithdots, 		% punktierte Linie bei Kapiteln, alternativ toc=chapterentrywithoutdots
	toc=sectionentrywithdots, 		% punktierte Linie bei Sections, alternativ toc=sectionentrywithoutdots
	headings=normal, 				% kleinere Überschriften + Abstände vor und nach Kapitelüberschriften
	parskip=half,					% Absatzeinzug (Standard), half: kein Einzug, Halber Zeilenabstand, ...
	captions=tableheading,			% korrekte Abstände bei Tabellenüberschriften
				]{scrbook}		% aus Komascript für Bücher
	

%%%%%%%%%% Sprache und Schriftbild %%%%%%%%%%

%\usepackage{ucs}					% wofür ist das?
\usepackage[ngerman]{babel} 			% deutschsprachig, silbentrennung
\usepackage[utf8]{inputenc} 			% Eingabe von Sonderzeichen
\usepackage[T1]{fontenc} 			% Schriftkodierung, Silbentrennung für Wörter mit Umlauten
\usepackage{lmodern} 				% ändert die Standardschriftart zu Latin Modern
\addtokomafont{disposition}{\rmfamily}		% Einheitliche Schriftart
\usepackage{microtype} 				% bessere Umbruchpunkte, verändert Buchstabenbreite um bis zu 2% bzw mit [stretch=10] 1%
\usepackage{setspace} 				% Zeilenabstand
\onehalfspacing 					% 1,5 Zeilen
%\setstretch{1,2381} 				% 1,3 Zeilen
\usepackage{xspace}				% Korrigiert Leerzeichen


%%%%%%%%%% Seitenlayout %%%%%%%%%%

\usepackage[left=30mm,right=21mm,top=32mm,bottom=38mm]{geometry}
\usepackage[headsepline]{scrpage2}		% Kopf- und Fußzeilen
\clearscrheadfoot 						% löscht alle bisherigen Kopf- und Fußzeilen
\pagestyle{scrheadings} 				% Seitenstil scrheadings verwenden
\renewcommand*{\chapterheadstartvskip}{\vspace*{-40pt}}	% Abstand: Oberkante - Kapitelüberschrift
\ihead{\leftmark}					% setzt Kopfzeile (chapterangabe)
\ofoot[-\,\pagemark\,-]{-\,\pagemark\,-}	% setzt Fußzeile [] -> chapterseiten; {} -> alle anderen Seiten
\usepackage{chngcntr}				% Fortlaufende Nummerierung
\counterwithout{footnote}{chapter}		% Fortlaufende Fußnoten
\counterwithout{figure}{chapter}		% Fortlaufende Abbildungen
\counterwithout{table}{chapter}			% Fortlaufende Tabellen
\usepackage{ellipsis}				% Korrigiert den Weißraum um Auslassungspunkte



%%%%%%%%%%% Gleitobjekte: Abbildungen / Diagramme %%%%%%%%%%%%%

\usepackage[margin=10pt,font=small,labelfont=bf,labelsep=endash]{caption}		% Abbildungsbezeichnung
\renewcommand{\figurename}{Abbildung}							% Abbildung statt figure
\usepackage{graphicx}							% Einbinden von Grafiken
\graphicspath{ {02_Abbildungen/} }
\usepackage{subcaption}							% ermöglicht Einzelbidbezeichnung
\usepackage{wrapfig}							% Grafik in Umgebung einbeten
\usepackage{pgfplots}				% Paket für Diagramme
\pgfplotsset{compat=newest,
			/pgf/number format/.cd, use comma}
\pgfplotscreateplotcyclelist{mylist}{%
	black,mark=*\\%
	every mark/.append style={fill=black!100!black},mark=square*\\%
	black, dashed, every mark/.append style={fill=black!100!black},mark=*\\%
	black, dashed, every mark/.append style={fill=black!100!black},mark=square*\\%
}
\usepackage{tikz}					% ermöglicht die Gestaltung eigener Grafiken/ Abbildungen/ Diagramme


 
%%%%%%%%%% Mathe %%%%%%%%%%

\usepackage{amsmath}				% Mathemodus 
\usepackage{amssymb}				% Symbole, Sonderzeichen
\usepackage{siunitx} 				%  commands like \num for typesetting numbers in all sorts of ways and \si for units (\SI{10}{\hertz})

\begin{document}
\begin{figure}[!h]
	\centering
	\begin{subfigure}[b]{0.53\linewidth}
		\centering
		\begin{tikzpicture}
		\begin{axis}[node font=\normalsize,
		height=1.3*\axisdefaultheight,
		width=\axisdefaultwidth,
		xbar,              
		axis x line=none,
		%axis y line=left, 
		ylabel=Metallseifendosierung in \%,
		y axis line style = { opacity = 00 },     
		tickwidth         = 0pt,
		enlarge y limits  = 0.5,
		enlarge x limits  = 0.02,
		%symbolic y coords = {0, 0.5, 1},
		ytick=data, % verringert die vier Einträge auf zwei
		nodes near coords,
		reverse legend,
		legend style={
			draw=none,
			legend cell align=left,
			at={(1,1)},
			xshift=0cm,
			yshift=-2cm,
			anchor=west
		}
		]
		\addplot [fill=white] coordinates { ( 312,0) (52,0.5) (74,1) };
		\addplot [fill=gray!40] coordinates { ( 312,0) (91,0.5) (93,1) };
		\addplot [fill=gray] coordinates { ( 312,0) (79,0.5) (82,1) };
		\addplot [fill=black!85] coordinates { (312,0) ( 195,0.5) ( 76,1)}; % Änderung der Füllfarbe
		\legend{LIGAPHOB ZN101 Plus, LIGA Calciumstearat 860, Zinkstearat 101, LIGAPHOB ZN 502}
		\end{axis}
		\end{tikzpicture}
		\caption{Druckfestigkeit bei 2\%-iger Wirkstoff-\newline dosierung}
		\label{fig:WAOberfl}
	\end{subfigure}
	\hfil
	\begin{subfigure}[b]{0.46\linewidth}
		\centering
		\begin{tikzpicture}
		\begin{axis}[
		height=1.3*\axisdefaultheight,
		width=\axisdefaultwidth,
		xbar,              
		axis x line=none,
		%axis y line=left, 
		%ylabel=Metallseifendosierung in \%,
		y axis line style = { opacity = 00 },     
		tickwidth         = 0pt,
		enlarge y limits  = 0.5,
		enlarge x limits  = 0.02,
		%symbolic y coords = {0, 0.5, 1},
		ytick=data, % verringert die vier Einträge auf zwei
		nodes near coords,
		%		reverse legend,
		%		legend style={
		%			draw=none,
		%			legend cell align=left,
		%			at={(1,1)},
		%			xshift=0cm,
		%			yshift=-2cm,
		%			anchor=west
		%		}
		]
		\addplot [fill=white] coordinates { ( 358,0) (189,0.5) (148,1) };
		\addplot [fill=gray!40] coordinates { ( 358,0) (212,0.5) (222,1) };
		\addplot [fill=gray] coordinates { ( 358,0) (192,0.5) (179,1) };
		\addplot [fill=black!85] coordinates { (358,0) ( 189,0.5) ( 171,1)}; % Änderung der Füllfarbe
		%\legend{LIGAPHOB ZN101 Plus, LIGA Calciumstearat 860, Zinkstearat 101, LIGAPHOB ZN 502}
		\end{axis}
		\end{tikzpicture}
		\caption{Druckfestigkeit bei 4\%-iger Wirkstoff-\newline dosierung}
		\label{fig:WA5mm}
	\end{subfigure}
	\caption[Druckfestigkeiten von silanbasierten Proben im Vergleich]{Druckfestigkeiten von silanbasierten Proben im Vergleich}
	\label{fig:MetallseifenWA}
\end{figure}
\end{document}
- Die Legende sollte oberhalb mittig sein, genau.
- Zudem stört mich noch das die Zahlen der untersten Balken rechts über den Rand ragen.
- könnte ich auf die y-Achsen-Bezeichnungen (symbolic y coords) verzichten..

Ist das zu realisieren?

Gruß
pauabaer
Dateianhänge
Metallseifen_WA_nebeneinander.png
Metallseifen_WA_nebeneinander.png (20.6 KiB) 2141 mal betrachtet

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

Also ungefähr so etwas wie
\documentclass[ 
    BCOR=12mm,            % Bindekorrektur: bei Buch normalerweise 12mm 
    twoside=false,            % Layout für beidseitigen Druck 
    headsepline,               % Kopfzeile mit horizontaler Liniel 
    parskip=half,               % Absatzeinzug (Standard), half: kein Einzug, Halber Zeilenabstand, ... 
    captions=tableheading,         % korrekte Abstände bei Tabellenüberschriften 
    ]{scrbook}      % aus Komascript für Bücher 

\usepackage[ngerman]{babel}          % deutschsprachig, silbentrennung 
\usepackage[utf8]{inputenc}          % Eingabe von Sonderzeichen 
\usepackage[T1]{fontenc}          % Schriftkodierung, Silbentrennung für Wörter mit Umlauten 
\usepackage{lmodern}             % ändert die Standardschriftart zu Latin Modern 
\usepackage{microtype}             % bessere Umbruchpunkte, verändert Buchstabenbreite um bis zu 2% bzw mit 
\usepackage{setspace}             % Zeilenabstand 
\onehalfspacing                % 1,5 Zeilen 
\usepackage[left=30mm,right=21mm,top=32mm,bottom=38mm]{geometry} 


\usepackage[margin=10pt,font=small,labelfont=bf,labelsep=endash]{caption}      % Abbildungsbezeichnung 
\usepackage{subcaption}                     % ermöglicht Einzelbidbezeichnung 

\usepackage{pgfplots}            % Paket für Diagramme 
\pgfplotsset{compat=newest, 
          /pgf/number format/.cd, use comma} 
\pgfplotscreateplotcyclelist{mylist}{% 
    black,mark=*\\% 
    every mark/.append style={fill=black!100!black},mark=square*\\% 
    black, dashed, every mark/.append style={fill=black!100!black},mark=*\\% 
    black, dashed, every mark/.append style={fill=black!100!black},mark=square*\\% 
} 

\usepackage{siunitx}

\begin{document} 
\begin{figure}[htbp]
    \centering 
    \ref{metallseife}
    \begin{subfigure}[b]{0.53\linewidth} 
       \centering 
       \begin{tikzpicture} [trim axis left]
       \begin{axis}[node font=\normalsize, 
       height=1.1*\axisdefaultheight, 
       width=.62*\axisdefaultwidth,
       scale only axis,
       xbar,
       xmin=0,
       axis x line=none, 
       ylabel=Metallseifendosierung in \%, 
       y axis line style = { opacity = 00 },     
       tickwidth         = 0pt, 
       enlarge y limits  = 0.3, 
       enlarge x limits  = 0.02, 
       ytick=data,
       nodes near coords, 
       reverse legend,
       legend to name=metallseife,
       legend columns=-1,
       legend style={draw=none,font=\footnotesize}
       ] 
       \addplot [fill=white] coordinates { ( 312,0) (52,0.5) (74,1) }; 
       \addplot [fill=gray!40] coordinates { ( 312,0) (91,0.5) (93,1) }; 
       \addplot [fill=gray] coordinates { ( 312,0) (79,0.5) (82,1) }; 
       \addplot [fill=black!85] coordinates { (312,0) ( 195,0.5) ( 76,1)}; % Änderung der Füllfarbe 
        \legend{LIGAPHOB ZN101 Plus, LIGA Calciumstearat 860\hspace*{2ex}, Zinkstearat 101\hspace*{2ex}, LIGAPHOB ZN 502\hspace*{2ex}}
       \end{axis} 
       \end{tikzpicture} 
       \caption{Druckfestigkeit bei 2\%-iger Wirkstoff-\newline dosierung} 
       \label{fig:WAOberfl} 
    \end{subfigure}%
    \hfil 
    \begin{subfigure}[b]{0.46\linewidth} 
       \centering 
       \begin{tikzpicture}[trim axis left] 
       \begin{axis}[ 
       height=1.1*\axisdefaultheight, 
       width=.62*\axisdefaultwidth,
       scale only axis, 
       xbar,
       xmin=0,
       axis x line=none, 
       y axis line style = { opacity = 00 },     
       tickwidth         = 0pt, 
       enlarge y limits  = 0.3, 
       enlarge x limits  = 0.02, 
       ytick=\empty,
       nodes near coords, 
       ] 
       \addplot [fill=white] coordinates { ( 358,0) (189,0.5) (148,1) }; 
       \addplot [fill=gray!40] coordinates { ( 358,0) (212,0.5) (222,1) }; 
       \addplot [fill=gray] coordinates { ( 358,0) (192,0.5) (179,1) }; 
       \addplot [fill=black!85] coordinates { (358,0) ( 189,0.5) ( 171,1)}; % Änderung der Füllfarbe 
       \end{axis} 
       \end{tikzpicture} 
       \caption{Druckfestigkeit bei 4\%-iger Wirkstoff-\newline dosierung} 
       \label{fig:WA5mm} 
    \end{subfigure} 
    \caption[Druckfestigkeiten von silanbasierten Proben im Vergleich]{Druckfestigkeiten von silanbasierten Proben im Vergleich} 
    \label{fig:MetallseifenWA} 
\end{figure} 
\end{document}
Gruß
Elke

PS: Schau Dir bitte mal an, was der Status »Rückfrage« bedeutet.

Bild
Dateianhänge
gl_xbarplot.png
gl_xbarplot.png (12.98 KiB) 2132 mal betrachtet

pauabaer
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 63
Registriert: Sa 19. Sep 2015, 00:17

Beitrag von pauabaer »

Genau so! :) Vielen Dank!!
esdd hat geschrieben: PS: Schau Dir bitte mal an, was der Status »Rückfrage« bedeutet.
Alles klar. Habe ich total übersehen!

EDIT:
Gibt es die Möglichkeit die Metallseifendosierung auf der y-Anzeige (0 und 1) mit einer Nachkommastelle zu versehen und einen fünften EIntrag in der Legende einfügen? Wenn ich ein weiteren Eintrag hinzufüge werden trotzdem nur 4 angezeigt..

Gruß
pauabaer

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

pauabaer hat geschrieben: Gibt es die Möglichkeit die Metallseifendosierung auf der y-Anzeige (0 und 1) mit einer Nachkommastelle zu versehen
yticklabel style={/pgf/number format/.cd,fixed, fixed zerofill,precision=1} 
pauabaer hat geschrieben:einen fünften EIntrag in der Legende einfügen? Wenn ich ein weiteren Eintrag hinzufüge werden trotzdem nur 4 angezeigt..
Die Legendeneinträge werden den bei jedem Plot abgespeicherten Legendenbild zugeordnet. Die Reihenfolgen von Plots und Legendeneinträgen müssen deshalb auch übereinstimmen. Wenn man einen zusätzlichen Legendeneintrag möchte, muss an der entsprechenden Stelle in der Plotreihenfolge
\addlegendimage{<optionen>};
angegeben werden. Ich weiß nicht, was Du tun möchtest, aber möglich wäre zum Beispiel
\addlegendimage{empty legend};
oder
\addlegendimage{xbar legend,fill=red};
Gruß
Elke

PS:
pauabaer hat geschrieben:
esdd hat geschrieben: PS: Schau Dir bitte mal an, was der Status »Rückfrage« bedeutet.
Alles klar. Habe ich total übersehen!
Nochmal: kannst Du Dir bitte anschauen, was der Status »Rückfrage« bedeutet?

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

Beitrag von Bartman »

@pauabaer

Ich hätte da noch Fragen zu Deinem Beispiel:
y axis line style = { opacity = 00 },
Es mag unwichtig erscheinen, aber warum zwei Nullen?

Du setzt in den Beschriftungen der beiden subfigure-Umgebungen in dem Wort "Wirkstoffdosierung" einen eigenen Trennstrich und erzwingst einen Zeilenumbruch. Stattdessen könntest Du die Trennstriche und Zeilenumrüche entfernen und bei den subfigure-Umgebungen das optionale Argument b durch t ersetzen.

pauabaer
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 63
Registriert: Sa 19. Sep 2015, 00:17

Beitrag von pauabaer »

esdd hat geschrieben:
yticklabel style={/pgf/number format/.cd,fixed, fixed zerofill,precision=1} 
Die Legendeneinträge werden den bei jedem Plot abgespeicherten Legendenbild zugeordnet. Die Reihenfolgen von Plots und Legendeneinträgen müssen deshalb auch übereinstimmen. Wenn man einen zusätzlichen Legendeneintrag möchte, muss an der entsprechenden Stelle in der Plotreihenfolge
\addlegendimage{<optionen>};
angegeben werden. Ich weiß nicht, was Du tun möchtest, aber möglich wäre zum Beispiel
\addlegendimage{empty legend};
oder
\addlegendimage{xbar legend,fill=red};
Danke.
esdd hat geschrieben: Nochmal: kannst Du Dir bitte anschauen, was der Status »Rückfrage« bedeutet?
Hmm..Scheinbar weiß ich nicht worauf du hinaus willst. :?

@Bartman
Ich hab den Befehl mit den zwei Nullen von einem Kollegen erhalten. Warum hier zwei stehen weiß ich nicht.

Danke für den Hinweis mit dem Argument 't'.

Ihr habt mir sehr geholfen. Vielen Dank!

Gruß
pauabaer

Antworten