PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Einfügen von Koordinaten



Murphy
24-05-2009, 17:34
Hallo, ich habe ein Problem beim Einfügen von Koordinaten mit PSTricks. Ich möchte ein Liniennetz abbilden und habe dazu die Koordinaten (Haltestellen) und Verbindungen (Linien) gegeben. Ich habe die Haltestellen als Knoten eingefügt - da das aber bei vielen Haltestellen zu aufwendig ist, habe ich versucht, das ganze automatisch einzulesen. Meine Frage ist also, ob man die Koordinaten und Verbindungen aus einer txt-Datei irgendwie einlesen lassen kann. Bisher habe ich das nur als Plotfunktion einfügen können, wobei da aber die Punkte nur in der Reihenfolge, wie sie aufgelistet sind, verbunden werden. Ich will die Verbindungen aber selbst angeben können.

voss
24-05-2009, 18:34
Hallo, ich habe ein Problem beim Einfügen von Koordinaten mit PSTricks. Ich möchte ein Liniennetz abbilden und habe dazu die Koordinaten (Haltestellen) und Verbindungen (Linien) gegeben. Ich habe die Haltestellen als Knoten eingefügt - da das aber bei vielen Haltestellen zu aufwendig ist, habe ich versucht, das ganze automatisch einzulesen. Meine Frage ist also, ob man die Koordinaten und Verbindungen aus einer txt-Datei irgendwie einlesen lassen kann. Bisher habe ich das nur als Plotfunktion einfügen können, wobei da aber die Punkte nur in der Reihenfolge, wie sie aufgelistet sind, verbunden werden. Ich will die Verbindungen aber selbst angeben können.

ist das was für dich? http://www.dante.de/dante/DTK/PDF/komoedie_2005_2.pdf
S.51ff
Ansonsten siehe:
http://tug.org/PSTricks/main.cgi?file=pst-plot/FunctionExamples#saveData

Herbert

Murphy
27-05-2009, 19:33
danke erstmal. die seite hatte ich auch schon gefunden. ich brauch aber immernoch eine möglichkeit entweder um daten direkt als knoten einzulesen oder geplotette daten (mit listplot oder fileplot) in knoten umzuwandeln.

voss
27-05-2009, 19:56
danke erstmal. die seite hatte ich auch schon gefunden. ich brauch aber immernoch eine möglichkeit entweder um daten direkt als knoten einzulesen oder geplotette daten (mit listplot oder fileplot) in knoten umzuwandeln.

Zahlenbeispiel! Und soweit wie möglich schon als kleines
LaTeX-Dokument aufbereitet, auch wenns nicht funktioniert.

Herbert

Murphy
28-05-2009, 14:13
Bsp-Daten ist eine Datei, wo ich die Knoten und Verbindungen einzeln eingefügt habe. So soll das Ganze am Ende ungefähr aussehen, nur möchte ich das Ganze eben automatisieren.

voss
28-05-2009, 16:24
Bsp-Daten ist eine Datei, wo ich die Knoten und Verbindungen einzeln eingefügt habe. So soll das Ganze am Ende ungefähr aussehen, nur möchte ich das Ganze eben automatisieren.

das lässt sich machen ...

Herbert

voss
28-05-2009, 19:58
Bsp-Daten ist eine Datei, wo ich die Knoten und Verbindungen einzeln eingefügt habe. So soll das Ganze am Ende ungefähr aussehen, nur möchte ich das Ganze eben automatisieren.

hier ein Beispiel:

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{pst-node}
\begin{filecontents}{demo.data}
1,10, Nordwest
5, 9, Nord
10,7, Nordost
3, 5, West
6, 6, Zentrum Ost
5, 5, Zentrum
3, 2, Zentrum Südwest
1, 1, Südwest
6, 2, Süd
10,1, Südost
\end{filecontents}

\makeatletter
\newcounter{nodectr}
\def\readNodeData@ii#1,#2,#3,#4\@nil{%
\stepcounter{nodectr}%
\rput(#1,#2){\cnode*{5pt}{N:\thenodectr}{\psframeb ox[linestyle=none]{#3}}}%
}
\def\readNodeData@i{%
\read1 to \pst@tempm
\typeout{\thenodectr: \pst@tempm}%
\expandafter\readNodeData@ii\pst@tempm,,,\@nil
\ifeof1 \else\readNodeData@i\fi}

\def\readNodeData#1{%
\begingroup
\openin1=#1
\endlinechar=-1\relax
\ifeof1 \@pstrickserr{Data file `#1' not found.}\@ehpa
\else\readNodeData@i\fi
\closein1%
\endgroup%
\ignorespaces}
\makeatother

\begin{document}
\psset{xunit=1.5cm,yunit=1.5cm, offset=0.5mm}
\begin{pspicture}(2,0)(11,11)
\readNodeData{demo.data}
\psset{linewidth=1mm,shortput=nab}
\ncline[linecolor=red]{N:1}{N:4}^{1}
\ncline[linecolor=red]{N:4}{N:6}^{1}
\ncline[linecolor=red]{N:6}{N:9}_{1}
\ncline[linecolor=red]{N:9}{N:10}^{1}
\ncline[linecolor=yellow]{N:3}{N:2}^{2}
\ncline[linecolor=yellow]{N:2}{N:5}^{2}
\ncline[linecolor=yellow]{N:5}{N:6}^{2}
\ncline[linecolor=yellow]{N:6}{N:7}^{2}
\ncline[linecolor=yellow]{N:7}{N:8}^{2}
\ncline[linecolor=orange]{N:2}{N:5}^{3}
\ncline[linecolor=orange]{N:5}{N:9}^{3}
\ncline[linecolor=green]{N:4}{N:1}^{4}
\ncline[linecolor=green]{N:4}{N:7}_{4}
\ncline[linecolor=blue]{N:1}{N:2}^{5}
\ncline[linecolor=blue]{N:2}{N:3}^{5}
\ncline[linecolor=blue]{N:3}{N:10}^{5}
\end{pspicture}
\end{document}


Herbert