Seite 1 von 1

Achsenbezeichnung pgfplots

Verfasst: Mo 3. Dez 2018, 08:51
von Malte1234
Hallo,

ich möchte ein Diagramm mit pgfplots erstellen. Das Problem liegt darin, dass die Werte im 1. und 3. Quadranten meines kartesischen Koordinatensystems verschiedene Einheiten haben sollen. Bisher habe ich das hier, was auch so weit funktioniert. Ich müsste nur die Achsen doppelt beschriften können.
\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{pgfplots}
\usepackage{tikz}
\usepackage[ngerman]{babel}
\usepackage{graphicx}
\usepackage[a4paper,left=3cm,right=3cm,top=2cm,bottom=4cm,bindingoffset=5mm]{geometry}
\usepackage{tabularx}

\title{Z-Diode}
\author{malte }
\date{November 2018}

\begin{document}

\maketitle
\centering
\section{Introduction}
\begin{tikzpicture}[]
    \begin{axis}[axis lines = middle,
        title={Diagramm Z-Dioden in Sperr und Durchlassrichtung},
        grid = major,
        grid style = {dashed},
        xlabel={$U_F[V]$},
        ylabel={I[mA]},
        xmin=-9,
        xmax=9,
        ymin=-30,
        ymax=90,
        ytick={-20, -10, 10, 20, 30, 40, 50, 60, 70, 80},
        xtick={ -8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8},
        xticklabels={ , -7,  , -5,  , -3, ,  , 1, , 3, , 5, , 7, }
        ]
		\addplot [color= blue, mark = x] table {ZD_6.2.csv};
		\addplot [mark = *, color = red] table {ZD_8.2.csv};
		\legend{ZD6.2, ZD8.2}
	\end{axis}
\end{tikzpicture}
\end document
Mit den Tabellen

#ZD 6,2
#IR[mA] UF[V]
-6.12 -30
-6.1 -25
-6.1 -20
-6.08 -15
-6.07 -10
-6 -5
-5.8 -1
-5.6 -0.5
-5.1 -0.1
0 0
0.574 0.1
0.62 0.5
0.64 1
0.68 5
0.7 10
0.72 20
0.735 40
0.74 60
0.75 70

und

#ZD 8,2
#IR[mA] UF[V]
-8.35 -30
-8.33 -25
-8.3 -20
-8.2 -15
-8.16 -10
-8.1 -5
-8.02 -1
-7.97 -0.5
-7.9 -0.1
0 0
0.62 0.1
0.67 0.5
0.69 1
0.73 5
0.75 10
0.77 20
0.78 40
0.79 60
0.8 70

Ich hoffe ihr versteht, was ich möchte und könnt mir weiterhelfen. Vielen Dank!

Verfasst: Mo 3. Dez 2018, 10:04
von markusv
So ganz verstehe ich dein Problem nicht. Welche Einheiten sind verschieden? So wie ich es verstehe und wie auch die Bezeichnungen der csv sind, sind die Einheiten jeweils die Gleichen (mA bzw. V). Die eine Kennlinie ist von einer 6,2 V-Z-Diode, die andere von einer 8,2 V-Z-Diode, oder? Dies kannst du doch in der Legende kennzeichnen.

Anbei das Minimalbeispiel mit ein paar Ergänzungsvorschlägen:
\begin{filecontents}{ZD_6.2.csv}
-6.12	-30	
-6.1	-25	
-6.1	-20	
-6.08	-15	
-6.07	-10	
-6	-5	
-5.8	-1	
-5.6	-0.5	
-5.1	-0.1	
0	0 
0.574	0.1	
0.62	0.5	
0.64	1	
0.68	5	
0.7 10	
0.72	20	
0.735	40	
0.74	60	
0.75	70
\end{filecontents}
\begin{filecontents}{ZD_8.2.csv}
-8.35	-30	
-8.33	-25	
-8.3	-20	
-8.2	-15	
-8.16	-10	
-8.1	-5	
-8.02	-1	
-7.97	-0.5	
-7.9	-0.1	
0 0 
0.62	0.1	
0.67	0.5	
0.69	1	
0.73	5	
0.75	10	
0.77	20	
0.78	40	
0.79	60	
0.8	70	
\end{filecontents}
\documentclass[12pt]{article}
\usepackage[utf8]{inputenc} % für ältere Editoren und OVerleaf noch notwendig
\usepackage{pgfplots} % lädt bereits TikZ
\pgfplotsset{compat=newest} % ergänzt
\usepackage[locale=DE]{siunitx}
%\usepackage{tikz}
\usepackage[ngerman]{babel}

\begin{document}
\centering
\section{Introduction}
\begin{tikzpicture}[]
    \begin{axis}[axis lines = middle,
        title={Diagramm Z-Dioden in Sperr- und Durchlassrichtung},
        width=12cm, % ergänzt
        grid = major,
        grid style = {dashed},
        xlabel={$U_F$ in \si{\volt}},
        ylabel={$I$ in \si{\milli\ampere}},%eine Bez. wie I[mA] ist falsch, wenn, müsste es eigentlich [I]=mA lauten.
        xmin=-9,
        xmax=9,
        ymin=-30,
        ymax=90,
        ytick={-20, -10, 10, 20,...,80},
        xtick={-8,-7,...,8},
        xticklabels={,-7,,-5,,-3,,,,1,,3,,5,,7,},
        legend pos=north west % ergänzt
        ]
      \addplot [color= blue, mark = x] table {ZD_6.2.csv};
      \addplot [mark = *, color = red] table {ZD_8.2.csv};
      \legend{\SI{6.2}{\volt}-Z-Diode, \SI{8.2}{\volt}-Z-Diode}
   \end{axis}
\end{tikzpicture}
\end{document}