Hallo,

ich würde gerne eine wave unter meinem Diagramm einfügen. Das Diagramm hat einen x-Bereich von 340-800 nm und ich würde gerne genau DEN Farbbereich dort einfügen, dass man sieht, wenn ich meine Kurve im Diagramm habe, welcher Punkt, welcher Farbe entspricht. !alt text

Ich habe das nun soweit umgeändert, wie es Henry mir gesagt hat, jedoch passt die Welle nicht mit der x-Achse überein. Ich habe zusätzlich ein paar Werte der .csv Datei hinzugefügt.

Hoffe ihr koennt mir weiterhin helfen!

Open in Online-Editor
\documentclass[10pt,a4paper]{article}
\usepackage[latin1]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{xcolor}
\usepackage{pgfplots}
\usetikzlibrary{
quotes,
angles,
babel,
calc,
3d,
intersections,
shapes,
}
\usepackage{tikz}
\usepackage{graphicx}
\begin{document}
\begin{figure}[h]
\centering  
\begin{tikzpicture}

\begin{axis}[ymin=0,grid,
width=0.9\textwidth,
height=0.3\textheight,
%xmin = 350,
%xmax = 750, %geringer wie 750 kann ich hier leider nicht gehen
title = {V-$\lambda$-Kurve},
axis line style={ultra thick},
xlabel={Wellenlänge $\lambda$ [nm]},
ylabel={Hellempfindlichkeitsgrad V [-]},
legend style={at={(1,1)}, anchor=north east, nodes=right}, name=main
]
\addplot [no marks, very thick, red]table {Tagsehen.csv};
\addplot [no marks, very thick, blue]table {Nachtsehen.csv};
\legend{Tagsehen, Nachtsehen};
\end{axis}

\begin{scope}[shift=(main.below south west)]
\shade[shading=rainbow,shading angle=90] (0,0) rectangle +(0.8\textwidth,-.5);
\foreach \lambda in {400,450,...,700} {
    \draw ({(\lambda-400)/300*0.8\textwidth},-.4) -- ({(\lambda-400)/300*0.8                \textwidth},-.5) node [below] {\lambda};
}
\end{scope}
\end{tikzpicture}
\caption {Relative-Spektrale-Hellempfindlichkeitskurve \cite{Reif.2014}}
\label{Vlambda}
\end{figure}
\end{document}

Ein paar Werte für das Tag- und Nachtsehen sind

Open in Online-Editor
Tagsehen
380 0
390 0.0001
400 0.0004
410 0.0012
420 0.004
550 0.995
560 0.995
740 0.00025
750 0.00012
760 0.00006
770 0.00003
780 0.000015

Nachtsehen
380 0.000589
390 0.002209
400 0.00929
410 0.03484
420 0.0966
430 0.1998
500 0.982
510 0.997
760 0.000000425
770 0.000000241
780 0.000000139

gefragt 22 Aug, 07:31

Starboma's gravatar image

Starboma
80111
Akzeptiert: 47%

bearbeitet 23 Aug, 05:12

(22 Aug, 14:31) cis

Ich würde kein picture, sondern ein TikZ shading verwenden um das Spektrum zu zeichnen.

Open in Online-Editor
\documentclass{article}
\usepackage{pgfplots}
\pgfdeclareverticalshading{rainbow}{100bp}
{color(0bp)=(red); color(25bp)=(red); color(35bp)=(yellow);
  color(45bp)=(green); color(55bp)=(cyan); color(65bp)=(blue);
  color(75bp)=(violet); color(100bp)=(violet)}
\begin{document}
\begin{figure}[h]
  \centering
  \begin{tikzpicture}
    \begin{axis}[ymin=0,grid,
      scale only axis,
      width=0.8\textwidth,
      height=0.3\textheight,
      xmin = 550,
      xmax = 800,
      title = {V-$\lambda$-Kurve},
      axis line style={ultra thick},
      xlabel={Wellenlänge $\lambda$ [nm]},
      ylabel={Hellempfindlichkeitsgrad V [-]},
      legend style={at={(1,1)}, anchor=north east, nodes=right},
      name = main,
      ]
      \draw [->] (0,0) -- (5,0) node [midway, below] {Text};
      % \addplot [no marks, very thick, red]table {Tagsehen.csv};
      % \addplot [no marks, very thick, blue]table {Nachtsehen.csv};
      \legend{Tagsehen, Nachtsehen};
    \end{axis}
    \begin{scope}[shift=(main.below south west)]
      \shade[shading=rainbow,shading angle=90] (0,0) rectangle +(0.8\textwidth,-.5);
      \foreach \lambda in {400,450,...,700} {
        \draw ({(\lambda-400)/300*0.8\textwidth},-.4) -- ({(\lambda-400)/300*0.8\textwidth},-.5) node [below] {\lambda};
      }
    \end{scope}
  \end{tikzpicture}
  \caption {Relative-Spektrale-Hellempfindlichkeitskurve \cite{Reif.2014}}
  \label{Vlambda}
\end{figure}
\end{document}

alt text

Permanenter link

beantwortet 22 Aug, 11:51

Henri's gravatar image

Henri
10.0k31730

Hallo Henri, Super, vielen Dank dir! Ich kann hier leider nicht komplett antworten, deswegen schreibe ich dies alles in eine neue Frage, unter meinen jetzigen Post!

(23 Aug, 04:24) Starboma

@Starboma Verfasse für jede neue Frage eine neue Frage :-) Hier sind Antworten stets "echte" Antworten, keine Gespräche oder Rückfragen oder Zusatzinfos, sondern Lösungen. Ungewohnt und anders als in Web-Diskussions-Foren, doch innovativ und nutzbarer als sortierte Archivlösung. Keine Sorge, Henri und wir anderen sehen die neue Frage auch.

(23 Aug, 10:23) stefan ♦♦

Das folgende mit xelatex laufen lassen.

Open in Online-Editor
\documentclass{article}
\usepackage{filecontents}
\begin{filecontents*}{tag.dat}
380 0
390 0.0001
400 0.0004
410 0.0012
420 0.004
550 0.995
560 0.995
740 0.00025
750 0.00012
760 0.00006
770 0.00003
780 0.000015
\end{filecontents*}
\begin{filecontents*}{nacht.dat}
380 0.000589
390 0.002209
400 0.00929
410 0.03484
420 0.0966
430 0.1998
500 0.982
510 0.997
760 0.000000425
770 0.000000241
780 0.000000139
\end{filecontents*}
\usepackage{fontspec}
\usepackage{pst-spectra,pst-plot}
\begin{document}

\begin{pspicture}(-1,-1.5)(9.1,5.1)
\psaxes[Ox=350,Dx=50,dx=1,xticksize=0 5,yticksize=0 9,
  xsubticks=5,xsubticksize=1,xsubtickcolor=black!15,
  tickcolor=black!25,Dy=0.2,dy=1,labelFontSize=\scriptstyle,
  axesstyle=frame](0,0)(9,5)
\readdata{\tag}{tag.dat}\readdata{\nacht}{nacht.dat}
\pstScalePoints(1,1){350 sub 50 div}{5 mul}
\pslistplot[linecolor=red,linewidth=1.2pt,plotstyle=line]{\tag}
\pslistplot[linecolor=blue,linewidth=1.2pt,plotstyle=line]{\nacht}
\rput[l](5.1,4){\textcolor{red}{Tagsehen}}
\rput[r](2.6,4){\textcolor{blue}{Nachtsehen}}
\psspectrum[begin=350,end=800](0,-1)(9,-1.5)
\rput{90}(-1,2.5){Hellempfindlichkeitsgrad V[-]}
\rput(4.5,-0.75){Wellenlänge $\lambda$ [nm]}
\end{pspicture}

\end{document}

alt text

Permanenter link

beantwortet 24 Aug, 14:59

crazyhorse's gravatar image

crazyhorse
4323

bearbeitet 24 Aug, 15:03

Ich würde es so machen:

colorwav.sty laden.

In der axis-Umgebung Koordinaten festlegen:

Open in Online-Editor
% Lichtsprektrum 1von2 "Koordinaten festlegen"
\foreach \W in {350,...,800} {
    \edef\temp{\noexpand\coordinate (Koord\W) at (axis cs:\W,0);}
    \temp
}

In der tikzpicture-Umgebung zeichen, so dass Lichtsprektrum genau unter der x-Koordinatenachse erscheint:

Open in Online-Editor
% Lichtsprektrum 2von2 "zeichnen"
\foreach \LAMBDA in {350,...,800}
{
\storeRGBofWavelength{\Rval}{\Gval}{\Bval}{\LAMBDA}
\definecolor{Name}{rgb}{\Rval,\Gval,\Bval}
\draw[Name, thick] ([yshift=-2cm]Koord\LAMBDA)--([yshift=-1.25cm]Koord\LAMBDA);
}
%

alt text

Open in Online-Editor
\RequirePackage{filecontents}
\begin{filecontents}{Tagsehen.csv}
380 0
390 0.0001
400 0.0004
410 0.0012
420 0.004
550 0.995
560 0.995
740 0.00025
750 0.00012
760 0.00006
770 0.00003
780 0.000015
\end{filecontents}
%
\begin{filecontents}{Nachtsehen.csv}
380 0.000589
390 0.002209
400 0.00929
410 0.03484
420 0.0966
430 0.1998
500 0.982
510 0.997
760 0.000000425
770 0.000000241
780 0.000000139
\end{filecontents}

%\documentclass[border=5pt, varwidth]{standalone}
\documentclass[10pt,a4paper]{article}
\usepackage{selinput}
\SelectInputMappings{adieresis={ä},  germandbls={ß}}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage{microtype}

\usepackage{amsmath, amsfonts, amssymb}
\usepackage{xcolor}
\usepackage{pgfplots}
\usetikzlibrary{quotes,angles,babel,calc,3d,intersections,shapes,}
\usepackage{tikz}
\usepackage{graphicx}

\usepackage{colorwav}
\begin{document}

\begin{figure}[h]
\centering

\begin{tikzpicture}
\begin{axis}[
% Allgm.
width=0.9\textwidth, height=0.3\textheight,
title = {V-$\lambda$-Kurve},
xlabel={Wellenlänge $\lambda$ [nm]},
ylabel={Hellempfindlichkeitsgrad V [-]},
legend style={at={(1,1)}, anchor=north east, nodes=right}, 
%name=main,
% x:
xmin = 350,  xmax = 800, 
minor xtick={350,360,...,800},
% y:
ymin=0, ymax=1,
ytick distance=0.2,
minor ytick={0.1,0.2,...,1},
% x und y: 
grid =both, %both, %major, minor
ticklabel style = {font=\footnotesize}
%axis line style={thick},
]
\addplot [no marks,  very thick, red]table {Tagsehen.csv};
\addplot [no marks,  very thick, blue]table {Nachtsehen.csv};
\legend{Tagsehen, Nachtsehen};
%
% Lichtsprektrum 1von2 "Koordinaten festlegen"
\foreach \W in {350,...,800}{
    \edef\temp{\noexpand\coordinate (Koord\W) at (axis cs:\W,0);}
    \temp
}
\end{axis}
%
% Lichtsprektrum 2von2 "zeichnen"
\foreach \LAMBDA in {350,...,800}{
\storeRGBofWavelength{\Rval}{\Gval}{\Bval}{\LAMBDA}
\definecolor{Name}{rgb}{\Rval,\Gval,\Bval}
\draw[Name, thick] ([yshift=-1.25cm]Koord\LAMBDA)--([yshift=-2cm]Koord\LAMBDA);
}
% Zusatz "Skala für Lichtspektrum"
\foreach \Lambda in {350,400,...,800}{
\draw[very thin] ([yshift=-1.9cm]Koord\Lambda)--([yshift=-2.1cm]Koord\Lambda) node[below, font=\footnotesize]{\Lambda};
}
%
\end{tikzpicture}
\caption {Relative-Spektrale-Hellempfindlichkeitskurve \cite{Reif.2014}}
\label{Vlambda}
\end{figure}
\end{document}
Permanenter link

beantwortet 24 Aug, 13:29

cis's gravatar image

cis
5.4k860167

bearbeitet 26 Aug, 08:58

Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Aktuelle Buch-Infos

LaTeX Cookbook

LaTeX Beginners Guide

Limitierter Rabatt ebook
50% Coupon code tDRet6Y

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs füge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×160
×5
×1

Frage gestellt: 22 Aug, 07:31

Frage wurde angeschaut: 436 Mal

Zuletzt aktualisiert: 26 Aug, 08:58