Gleichmäßige y-Label

Tabellen und Grafiken erstellen und anordnen


Friedolien
Forum-Anfänger
Forum-Anfänger
Beiträge: 11
Registriert: Mo 7. Mai 2018, 21:23

Gleichmäßige y-Label

Beitrag von Friedolien »

Hallo, ich habe ein neues Problem, was ich selber nicht lösen kann. Dazu 2 Graphen: Der erste funktioniert soweit wie er soll. Beim 2. habe ich das Problem, dass die y-Achsenbeschriftung nicht so sein soll, wie ich das möchte. Ich möchte, dass das genauso einheitlich mit den kommata und nachkommastellen ist, wie beim Ersten. Habe schon versucht y label (gerade auskommentiert) einzufügen mit dem gleichen Style wie beim ersten. Problem sind aber die 10er Potenzen, die natürlich beim Zweiten stehen bleiben sollen und lediglich die Beschriftungen angepasst werden sollen.

Die Frage ist, wie ich es hinbekomme, dass im 2. Diagramm die yAchsen Werte für 0, 2 und 4*10^-3 auch als 0,0 2,0 und 4,0 * 10^-3 geschrieben werden wie die anderen Werte?

kann mir da jemand helfen. Das wäre spitze. Bin schon am verzweifeln...
\documentclass[12pt]{article}
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{subfig}
\usepackage{pgfplots}% lädt auch tikz
\pgfplotsset{compat=1.12}% aktuell wäre 1.16

\begin{document}
	\begin{figure}
	\subfloat[MSE für die Höhenregelung bei den drei Szenarien und Regelungsstrategien]{
	\begin{tikzpicture}
		\begin{axis}[
			width=0.46\textwidth,
			y tick label style={/pgf/number format/.cd,fixed,precision=1,zerofill},
			x tick label style={
				/pgf/number format/1000 sep=},
			symbolic x coords={Ohne,Sinus,Sprung},
			%xticklabel={Ohne,Sinus,Sprung},
			ylabel=$H_{MSE}\,\lbrack{m^2}\rbrack$,
			enlargelimits=0.35,
			ybar,
			bar width=9pt,
			xtick={Ohne,Sinus,Sprung},
			xmin=Ohne, xmax=Sprung,
			%ymin=0, 
			%ymax=125,
			ytick={100.0,102.5,...,125.0},
			ymin=100.0,ymax=125.0,% <- eingefügt 
			enlarge y limits=0.0,% <- eingefügt ?????????????????
			grid, 
			%---
			%enlarge x limits=0.15,
			%width=5cm,	height=\axisdefaultheight,
			legend entries={PID,MRAC,NN},
			legend columns=3,
			legend style={anchor=south,legend pos=north east, yshift=1cm, draw=none
			}		
			%legend pos=outer north east
			%	legend style={ 
			%		at={(0.5,-0.2)}, 
			%		anchor=north, 
			%		legend columns=-1 
			%	}
			]
			\addplot 
			coordinates {(Ohne,117.35) (Sinus,125) (Sprung,125)};%PID
			
			\addplot 
			coordinates {(Ohne,117.74) (Sinus,118.29) (Sprung,117.14)};%MRAC
			
			\addplot 
			coordinates {(Ohne,118.08) (Sinus,118.09) (Sprung,117.53)};%NN
			%\addplot[black,fill=white,
			%postaction={pattern=north east lines,pattern color=gray}] coordinates {(Sinus,125) (Sprung,125)};
			%\legend{PID, konv. MRAC,MRAC mit NN} 
		\end{axis}
		\label{MSE_H}	
	\end{tikzpicture}}\quad
	\subfloat[MSE für die Lageregelung bei den drei Szenarien und Regelungsstrategien]{
	\begin{tikzpicture}
		\begin{axis}[
			width=0.46\textwidth,
			%y tick label style={/pgf/number format/precision=1,fixed,zerofill},
			x tick label style={
				/pgf/number format/1000 sep=},
			symbolic x coords={Ohne,Sinus,Sprung},
			%xticklabel={Ohne,Sinus,Sprung},
			ylabel=$\theta_{MSE}\,\lbrack{^{\circ^2}}\rbrack$,
			enlargelimits=0.35,
			%nodes near coords,nodes near coords align=east,point meta=rawy,
			ybar,
			bar width=9pt,
			xtick={Ohne,Sinus,Sprung},
			xmin=Ohne, xmax=Sprung,
			%ymin=0, 
			%ymax=125,
			ytick={0,0.0004,0.0008,0.0012,0.0016,0.002,0.0024,0.0028,0.0032,0.0036,0.004},
			ymin=0,ymax=0.004,% <- eingefügt 
			enlarge y limits=0,% <- eingefügt 
			grid, 
			%---
			%enlarge x limits=0.15,
			%width=5cm,	height=\axisdefaultheight,
			legend entries={PID,MRAC,NN},
			legend columns=3,
			legend style={anchor=south,legend pos=north east, yshift=1cm, draw=none
			}		
			%legend pos=outer north east
			%	legend style={ 
			%		at={(0.5,-0.2)}, 
			%		anchor=north, 
			%		legend columns=-1 
			%	}
			]
			\addplot 
			coordinates {(Ohne,0.0018) (Sinus,0.004) (Sprung,0.004)};
			
			\addplot 
			coordinates {(Ohne,0.0016) (Sinus,0.0022) (Sprung,0.0022)};
			
			\addplot 
			coordinates {(Ohne,0.0017) (Sinus,0.0017) (Sprung,0.0039)};
			%\legend{PID, konv. MRAC,MRAC mit NN} 
		\end{axis}
		\label{MSE_theta}
	\end{tikzpicture}}
\caption[MSE für Regelparameter bei drei Szenarien für die drei Regelstrategien - Reiseflug]{MSE für Regelparameter bei drei Szenarien für die drei Regelstrategien - Reiseflug}
\label{MSE_all}
\end{figure}
\end{document}

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

Beitrag von esdd »

Ich habe jetzt nicht unbedingt verstanden, wie es am Ende aussehen soll. Eventuell:
\documentclass[12pt]{article}
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{subfig}
\usepackage{pgfplots}% lädt auch tikz
\pgfplotsset{compat=1.12}% aktuell wäre 1.16

\begin{document}
   \begin{figure}
   \subfloat[MSE für die Höhenregelung bei den drei Szenarien und Regelungsstrategien]{
   \begin{tikzpicture}
      \begin{axis}[
         width=0.46\textwidth,
         y tick label style={/pgf/number format/.cd,fixed,precision=1,zerofill},
         x tick label style={
            /pgf/number format/1000 sep=},
         symbolic x coords={Ohne,Sinus,Sprung},
         ylabel=$H_{MSE}\,\lbrack{m^2}\rbrack$,
         enlarge x limits=0.35,% <- geändert, dafür kann enlarge y limits=0 entfallen
         ybar,
         bar width=9pt,
         xtick={Ohne,Sinus,Sprung},
         xmin=Ohne, xmax=Sprung,
         ytick={100.0,102.5,...,125.0},
         ymin=100.0,ymax=125.0,% <- eingefügt 
         grid, 
         legend entries={PID,MRAC,NN},
         legend columns=3,
         legend style={anchor=south,legend pos=north east,
         yshift=1.25cm,% <- geändert
         draw=none
         }      
         ]
         \addplot 
           coordinates {(Ohne,117.35) (Sinus,125) (Sprung,125)};
         \addplot 
           coordinates {(Ohne,117.74) (Sinus,118.29) (Sprung,117.14)};
         \addplot 
           coordinates {(Ohne,118.08) (Sinus,118.09) (Sprung,117.53)};
      \end{axis}
      \label{MSE_H}   
   \end{tikzpicture}}\quad
   \subfloat[MSE für die Lageregelung bei den drei Szenarien und Regelungsstrategien]{
   \begin{tikzpicture}
      \begin{axis}[
         width=0.46\textwidth,
         scaled y ticks=base 10:3,
         y tick label style={/pgf/number format/fixed,/pgf/number format/precision=1,/pgf/number format/zerofill},
         x tick label style={
            /pgf/number format/1000 sep=},
         symbolic x coords={Ohne,Sinus,Sprung},
         ylabel=$\theta_{MSE}\,\lbrack{^{\circ^2}}\rbrack$,
         enlarge x limits=0.35,
         ybar,
         bar width=9pt,
         xtick={Ohne,Sinus,Sprung},
         xmin=Ohne, xmax=Sprung,
         ytick={0,0.0004,0.0008,0.0012,0.0016,0.002,0.0024,0.0028,0.0032,0.0036,0.004},
         ymin=0,% <- reicht
         grid, 
         legend entries={PID,MRAC,NN},
         legend columns=3,
         legend style={anchor=south,legend pos=north east,
         yshift=1.25cm,% <- geändert
         draw=none
         }      
         ]
         \addplot 
           coordinates {(Ohne,0.0018) (Sinus,0.004) (Sprung,0.004)};
         \addplot 
           coordinates {(Ohne,0.0016) (Sinus,0.0022) (Sprung,0.0022)};
         \addplot 
           coordinates {(Ohne,0.0017) (Sinus,0.0017) (Sprung,0.0039)};
      \end{axis}
      \label{MSE_theta}
   \end{tikzpicture}}
\caption[MSE für Regelparameter bei drei Szenarien für die drei Regelstrategien - Reiseflug]{MSE für Regelparameter bei drei Szenarien für die drei Regelstrategien - Reiseflug}
\label{MSE_all}
\end{figure}
\end{document}

Gast

Beitrag von Gast »

Ich verstehe ehrlich gesagt nicht ganz, was das Ergebnis sein soll. Vielleicht suchst Du schlicht nach:
         y tick label style={/pgf/number format/precision=1,/pgf/number format/fixed,/pgf/number format/zerofill},

Friedolien
Forum-Anfänger
Forum-Anfänger
Beiträge: 11
Registriert: Mo 7. Mai 2018, 21:23

Beitrag von Friedolien »

optimal. Vielen Dank euch beiden, das ist genau das was ich gesucht habe. Tausend Dank, ihr habt mir wirklich sehr geholfen :)

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

Beitrag von Bartman »

Falls Deine Arbeit in deutscher Sprache verfasst ist, solltest Du use comma angeben.
\documentclass[border=5pt, preview]{standalone}
\usepackage[ngerman]{babel}% <- geändert
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{subfig}
\usepackage{siunitx}
\usepackage{pgfplots}

\usepgfplotslibrary{units}

\pgfplotsset{
   compat=1.12,% aktuell wäre 1.16
   /pgf/number format/use comma% <- eingefügt
}

\sisetup{locale=DE}

\begin{document}
   \begin{figure}
   \subfloat[MSE für die Höhenregelung bei den drei Szenarien und Regelungsstrategien]{
   \begin{tikzpicture}
      \begin{axis}[
         width=0.46\textwidth,
         y tick label style={/pgf/number format/.cd,fixed,precision=1,zerofill},
         x tick label style={
            /pgf/number format/1000 sep=},
         symbolic x coords={Ohne,Sinus,Sprung},
         ylabel=$H_{\mathrm{MSE}}$,% <- geändert
         y unit=\si{\m\squared},% <- eingefügt
         enlarge x limits=0.35,
         ybar,
         bar width=9pt,
         xtick={Ohne,Sinus,Sprung},
         xmin=Ohne, xmax=Sprung,
         ytick={100.0,102.5,...,125.0},
         ymin=100.0,ymax=125.0,
         grid, 
         legend entries={PID,MRAC,NN},
         legend columns=3,
         legend style={anchor=south,legend pos=north east,
         yshift=1.25cm,
         draw=none
         }      
         ]
         \addplot 
           coordinates {(Ohne,117.35) (Sinus,125) (Sprung,125)};
         \addplot 
           coordinates {(Ohne,117.74) (Sinus,118.29) (Sprung,117.14)};
         \addplot 
           coordinates {(Ohne,118.08) (Sinus,118.09) (Sprung,117.53)};
      \end{axis}
      \label{MSE_H}   
   \end{tikzpicture}}\quad
   \subfloat[MSE für die Lageregelung bei den drei Szenarien und Regelungsstrategien]{
   \begin{tikzpicture}
      \begin{axis}[
         width=0.46\textwidth,
         scaled y ticks=base 10:3,
         y tick label style={/pgf/number format/fixed,/pgf/number format/precision=1,/pgf/number format/zerofill},
         x tick label style={
            /pgf/number format/1000 sep=},
         symbolic x coords={Ohne,Sinus,Sprung},
         ylabel=$\theta_{\mathrm{MSE}}\ \lbrack{^{\circ^2}}\rbrack$,% <- geändert
         enlarge x limits=0.35,
         ybar,
         bar width=9pt,
         xtick={Ohne,Sinus,Sprung},
         xmin=Ohne, xmax=Sprung,
         ytick={0,0.0004,0.0008,0.0012,0.0016,0.002,0.0024,0.0028,0.0032,0.0036,0.004},
         ymin=0,
         grid, 
         legend entries={PID,MRAC,NN},
         legend columns=3,
         legend style={anchor=south,legend pos=north east,
         yshift=1.25cm,
         draw=none
         }      
         ]
         \addplot 
           coordinates {(Ohne,0.0018) (Sinus,0.004) (Sprung,0.004)};
         \addplot 
           coordinates {(Ohne,0.0016) (Sinus,0.0022) (Sprung,0.0022)};
         \addplot 
           coordinates {(Ohne,0.0017) (Sinus,0.0017) (Sprung,0.0039)};
      \end{axis}
      \label{MSE_theta}
   \end{tikzpicture}}
\caption{MSE für Regelparameter bei drei Szenarien für die drei Regelstrategien -- Reiseflug}% <- optionales und erforderliches Argument haben den gleichen Inhalt
\label{MSE_all}
\end{figure}
\end{document}
Sollte einer meiner Änderungsvorschläge erheblichen Aufwand bedeuten, dann meide diesen.

Antworten