PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : PSTricks: Mit \listplot zwei Plots in einem Diagramm transparent darstellen



Farley
16-10-2011, 13:00
Hallo zusammen,

ich habe in der Vergangenheit schon viele nützliche Tipps in diesem Forum gefunden. Leider habe ich heute ein Problem, bei dem ich nicht weiter komme. Deshalb richte ich die Frage mal an alle Experten hier und hoffe jemand hat Rat.

Also, ich möchte gerne mit pstricks zwei Plots in einem Diagramm darstellen. Das klappt auch soweit, hier der tex-code:


\documentclass[a4paper,oneside,11pt]{article}

\usepackage{pstricks}
\usepackage{auto-pst-pdf}
\usepackage{pst-all}

\begin{document}
\begin{figure}[h]
\centering
\psset{xunit=3mm,yunit=2.5cm}
\begin{pspicture}(0,-1)(42,1)
\psaxes[axesstyle=axes,Dx=5, Dy=0.5](0,0)(0,-1)(42,1)
\readdata{\data}{1.txt}
\listplot[linewidth=.1pt,linecolor=blue]{\data}
\readdata{\data}{2.txt}
\listplot[linewidth=.1pt,linecolor=green]{\data}
\end{pspicture}

\end{figure}
\end{document}


Mein Problem ist nun, dass die Plotkurven absolut opak sind, also nicht transparent. Dadurch wird an vielen Stellen die blaue Kurve von der grünen überdeckt, was nicht sehr schön aussieht. Gibt es eine Möglichkeit, die Kurven transparent zu gestalten, so dass auch bei Überlappungen beide Kurven sichtbar sind? Ich habe raus gefunden, dass man für pstricks auch selbst Farben definieren kann. Allerdings keine transparenten. Oder liege ich da falsch?

Bin für jeden Rat dankbar!

MfG
Farley

Farley
19-10-2011, 14:08
Niemand eine Idee?

mechanicus
19-10-2011, 18:18
\documentclass[a4paper,oneside,11pt]{article}

\usepackage{pstricks}
\usepackage{pst-plot}
\usepackage{pstricks-add}

\begin{document}
\begin{figure}[h]
\centering
\psset{xunit=3mm,yunit=2.5cm}
\begin{pspicture}(0,-1)(42,1)
\psaxes[axesstyle=axes,Dx=5, Dy=0.5](0,0)(0,-1)(42,1)
\psset{,linewidth=4pt}
\psplot[,linecolor=blue]{0}{42}{x 42 div}
\psplot[,linecolor=green,strokeopacity=0.5]{0}{42}{x neg 42 div 1 add }

% \readdata{\data}{1.txt}
% \listplot[linewidth=.1pt,linecolor=blue]{\data}
% \readdata{\data}{2.txt}
% \listplot[linewidth=.1pt,linecolor=green]{\data}
\end{pspicture}

\end{figure}
\end{document}

Marco

Farley
22-10-2011, 10:53
Super, vielen Dank!!!

skatzl
19-01-2012, 11:41
Hallo,
ich hab ein ähnliches Problem. Ich möchte zwei Datensätze plotten, von denen der zweite transparent sein soll.
Obiges Beispiel (mit \psplot) funktioniert bei mir, wenn ich das Ergebnis in pdf konvertiere (ps->pdf). Aber bei \listplot scheint "strokeopacity" gar nichts zu nützen.


\documentclass[12pt,a4paper]{article}
\usepackage{pstricks}
\usepackage{pst-plot}
\usepackage{pstricks-add}

\begin{document}

\readdata{\dataa}{Dataa.dat}
\readdata{\datab}{Datab.dat}
\psset{xunit=1cm, yunit=1cm}

\begin{pspicture}(-0,-0)(12,5.5)
\psaxes[Dx=0.01, dx=2.5cm, Dy = 0.1, dy=1.3cm, Ox=0.98, Oy=99.6, Dy=0.1]{->}(0,0)(12,5.5)
\pstScalePoints(300,13){0.98 sub}{99.6 sub}

\listplot[linewidth=1pt, linecolor=red,plotstyle=dots]{\dataa}
\listplot[linewidth=1pt, linecolor=green,strokeopacity=0.5,
plotstyle=dots]{\datab}

\end{pspicture}
\end{document}


Kann jemand helfen? Danke, k.