PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Sekundärachsen mit psgraph-Umgebung



Bowlinator
05-09-2011, 00:18
Hallo zusammen,

Ich schreibe gerade meine Diss und verwende PStricks zur erstellung der Graphen, was hammermäßig aussieht (im Vergleich zu Excel :-).

Ich vermisse nur die möglichkeit sekundäre x-und y- einzufügen, was oftmals notwendig ist um einen fultionellen Zusammenhang darzustellen. ( Origin/Excel geht das ohne Probleme)

Wie kann man das machen? (bei TUG: http://tug.org/PSTricks/main.cgi?file=pst-plot/psaxes Multi axis; hab ich was mit multido gefunden was ich umständlich finde.

Gibts da ne möglichkeit das in der psgraph umgebung zu realsieren (das automatische Skalieren von psgraph ist ziemlich spitze)?

Danke für Anregungen

Stephan

Tim77
05-09-2011, 07:23
Hat nichts mit dem Problem an sich zu tun, aber falls Du einen Mac hast, lohnt sich auch ein Blick auf Omni Graph Sketcher für die Diagramme.

localghost
05-09-2011, 09:46
Ein Minimalbeispiel (http://minimalbeispiel.de) und eine präzisere Beschreibung dessen, was Du erreichen willst, wäre sehr hilfreich. Vielleicht mit Bild von einem bereits erstellten Diagramm. Lade dazu auch gleich einen Datensatz (oder falls nötig auch mehrere) als Beispiel hoch und hänge sie an deinen nächsten Beitrag an. Dann kann man mal ein bisschen basteln. Aber eigentlich sind die Beispiele (http://tug.org/PSTricks/main.cgi?file=pst-plot/psaxes#multiAxes) doch gar nicht schlecht.


Thorsten

Bowlinator
05-09-2011, 10:46
Was ich erreichen will sind sekundäre x und y achsen, da ist ein Beispiel erstmal unwichtig (z.B. primäre x-Achse: masse in g von 0 bis 100 in 10er schritten, sekundäre x-Achse: zugehöriges Volumen in m³/kg von 0-88 in 5er Schritten) .

Die primären achsen lassen sich ja sehr leicht formatieren (tickstyle, subtickstyle etc), ne zweite Achse ist aber oftmals sinnvoll.

So eine Formatierung wie mit Multido benötigt immer nachdenken, Einteilung, position, berechnung (ist in LaTeX ja bescheiden) , stärke etc.... deshalb würde ich das darüber ungern machen, weil man jedes mal aufs neue Rechnen muss.

Gruß Stephan

rstuby
05-09-2011, 11:16
Ein Minimalbeispiel ist etwas, was man in seinen Editor kopieren und kompilieren kann.

Beschrieben werden sollte zusätzlich das Problem bzw. das, was im Beispiel geändert werden sollte. In deinem Fall z.B. schreibst du uns ein Beispiel mit Primärachse UND teilst uns mit, was für Sekundärachsen du willst.
Keiner hat Lust, das Beispiel selber zu schreiben (und nachher stellt sich heraus, dass es aus irgendeinem Grund nicht zu deinem Dokument passt). Ich habe manchmal Lust, Minimalbeispiele für Anfänger zu basteln, aber jetzt grad nicht, und kenne mich auch mit dieser Materie zu wenig aus.

Bowlinator
05-09-2011, 12:57
OK, ich dachte das diese Frage eher genereller Natur ist, aber ich kann auch gern ein Beispiel geben:



\documentclass{article}
\usepackage[runs=2]{auto-pst-pdf}
\usepackage{etex}
\usepackage{ragged2e}
\usepackage{pst-plot,pstricks-add,pst-bar}
\usepackage{amsmath,amssymb}
\usepackage{siunitx,chemsym}


\newcommand{\pslineTxt}[6][r]{\psline(#2,#3)(#4,#5)
\uput[#1](#4,#5){#6}}

\newcommand{\Achsen}[2]{
\psset{xAxisLabel={\bfseries #1},xAxisLabelPos={c,-0.4in},%
yAxisLabel={\bfseries #2},yAxisLabelPos={-0.45in,c},lly=-30pt,ury=10pt,llx=-10pt}
}

\begin{document}
\def\data
{0.113971 2.59996 7.73273 7.54522
0.170003 2.31789 6.04459 5.43491
0.214329 2.1529 4.2623 4.54345
0.251807 1.58999 2.83199 3.69918
0.440264 1.07129 1.93839 2.47756
0.623125 0.716869 1.81834 2.12303
0.799335 0.550149 1.60464 1.97965
0.962532 0.524056 1.43803 1.85991
1.22411 0.707473 1.55113 2.01978
1.76004 0.464721 1.54276 1.9411
2.27632 0.550405 1.48781 1.74563
2.70748 0.332622 1.31701 1.4342
}


\psset{Ox=0, Dy=1, Oy=0, Dx=.5,dotsize=5pt,algebraic}
\Achsen{$Ca = \frac {\eta_c\, u_c}{\sigma_{c/d}}$}{Sauterdurchmesser d_{32}}
\footnotesize
\sffamily
\begin{psgraph}[subticks=5,axesstyle=frame,ticks=all,tickstyle=ful l,tickstyle=bottom](0,0)(3,9){14cm}{8cm}

\psline[linestyle=dotted,linewidth=.2pt](0.5,0.6)(0.5,9)

\psline[linestyle=dashed,linewidth=.2pt](0.5,0.6)(3,0.6)
\pslineTxt{2.5}{.6}{2.65}{3}{3\cdot \SI{0,2}{\micro\meter}}

\psline[linestyle=dashed,linewidth=.2pt](0.5,1.5)(3,1.5)
\pslineTxt{2.5}{1.5}{2.65}{4}{3\cdot \SI{0,5}{\micro\meter}}

\psline[linestyle=dashed,linewidth=.2pt](0.5,2.4)(3,2.4)
\pslineTxt{2.5}{2.4}{2.65}{5}{3\cdot \SI{0,8}{\micro\meter}}

\pslineTxt{1.22411}{0.707473}{1.5}{3}{d_{Pore} = \SI{0,2}{\micro\meter}}
\listplot[xStart=0.113971,dotsize=5pt,showpoints=true,plotst yle=curve,plotNo=1,plotNoMax=3,dotstyle=Bo,linewid th=.5pt,linestyle=dotted]{\data}

\pslineTxt{1.22411}{1.55113}{1.5}{4}{d_{Pore} = \SI{0,5}{\micro\meter}}
\listplot[xStart=0.113971,dotsize=5pt,showpoints=true,plotst yle=curve,plotNo=2,plotNoMax=3,dotstyle=Bsquare,li newidth=.5pt,linestyle=dotted]{\data}

\pslineTxt{1.22411}{2.01978}{1.5}{5}{d_{Pore} = \SI{0,8}{\micro\meter}}
\listplot[xStart=0.113971,dotsize=5pt,showpoints=true,plotst yle=curve,plotNo=3,plotNoMax=3,dotstyle=BoldHexago n,linewidth=.5pt,linestyle=dotted]{\data}


\end{psgraph}
\end{document}


Ich möchte als sekundäre x-achse die Beschriftung:

Wandschubspannung \tau_W = 2\,\frac{d_{Tr}}{u_c}}

Die Einheiten von 0 bis 16000 Pa

UNd als sekundäre y-achse

Tropfendurchmesser d_{Tr}

Die Einheiten von 0 bis 7 µm

Ist das ein Minimalbeispiel?

Sorry wenn ich das nicht so hinbekomme wie ihr das braucht.

Stephan

Bowlinator
06-09-2011, 10:16
Danke für den Tip localghost,

die TUG seite bietet immer wieder neue Überraschungen, da hab ich was gefunden,

mit \psaxes gehts ohne Probleme, danke.

Gruß Stephan