Wenn Knotenpunkte automatisch erstellt werden (mit leerem Inhalt), ist es dann möglich, im Nachhinein den Inhalt eines Knotenpunktes neu anzugeben (da ich in meinem Falle nur wenige Knotenpunkte tatsächlich mit bestimmten Inhalten füllen möchte), sonst bringt einem die Vereinfachung der Schreibarbeit schließlich nichts.

Also irgendwie in etwa:

Open in writeLaTeX
% h: Anzahl der Spalten sowie Reihen zwischen den Eckpunkten

% Gitterpunkte der oberen und unteren Seite:
\def \h{7}
\foreach \n in {1, ..., \h}
  \node (O\n) at ($ (1) !.{(1 / (\h + 1)) * \n}!    (2) $) {}; 
\foreach \n in {1, ..., \h}
  \node (U\n) at ($ (4) !.{(1 / (\h + 1)) * \n}!    (3) $) {};

% Gitterpunkte der linken und rechten Seite:
\def \h{6}
\foreach \n in {1, ..., \h}
  \node (L\n) at ($ (2) !.{(1 / (\h + 1)) * \n}!    (3) $) {}; 
\foreach \n in {1, ..., \h}
  \node (R\n) at ($ (1) !.{(1 / (\h + 1)) * \n}!    (4) $) {};

% Ändern des Inhaltes bestimmter Knotenpunkte:
\node (U7) {... jsdncf sdfk usw...}

gefragt 02 Mär '14, 14:36

rix's gravatar image

rix
39071823
Akzeptiert-Rate: 0%

konvertiert in Frage 02 Mär '14, 15:23

stefan's gravatar image

stefan ♦♦
18.3k163148

@rix In Beiträgen hier kann man Code durch Einrückung mit 4 Leerzeichen markieren, oder einfach Markieren und Strg-K drücken, oder den Code Button klicken (da steht 101010 drauf). Vorteil: Syntaxhervorhebung und direkter Link zum writeLaTeX Online-Compiler.

(02 Mär '14, 15:37) stefan ♦♦

Einen bereits geschriebenen Inhalt kann man zwar nicht einfach ändern, doch Du kannst an derselben Position, die ja leer ist, einen neuen node mit der at-Syntax einfügen:

Open in writeLaTeX
\node at (U7) {Text};

Du kannst statt leerer nodes kürzer \coordinate verwenden. Ein Minimalbeispiel (wäre schön, wenn Du auch stets vollständige kleine Beispiele in Fragen zum Bearbeiten postest - so können wir es richtig bearbeiten und haben es gleich mit einem Klick auf "Open in writeLaTeX" offen):

Open in writeLaTeX
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
  % Ein paar Startpunkte
  \coordinate (1) at (0,4);
  \coordinate (2) at (5,4);
  \coordinate (3) at (5,0);
  \coordinate (4) at (0,0);
  % h: Anzahl der Spalten sowie Reihen zwischen den Eckpunkten
  \def \h{7}
  % Gitterpunkte der oberen und unteren Seite:
  \foreach \n in {1, ..., \h}
    \coordinate (O\n) at ($ (1) !.{(1 / (\h + 1)) * \n}!    (2) $); 
  \foreach \n in {1, ..., \h}
    \coordinate (U\n) at ($ (4) !.{(1 / (\h + 1)) * \n}!    (3) $);
  % Gitterpunkte der linken und rechten Seite:
  \def \h{6}
  \foreach \n in {1, ..., \h}
    \coordinate (L\n) at ($ (2) !.{(1 / (\h + 1)) * \n}!    (3) $); 
  \foreach \n in {1, ..., \h}
    \coordinate (R\n) at ($ (1) !.{(1 / (\h + 1)) * \n}!    (4) $);
  % Beschreiben bestimmter Knotenpunkte:
  \node at (U7) {X};
\end{tikzpicture}
\end{document}
Permanenter link

beantwortet 02 Mär '14, 15:36

stefan's gravatar image

stefan ♦♦
18.3k163148
Akzeptiert-Rate: 49%

bearbeitet 02 Mär '14, 15:39

Man kann zunächst die Struktur mit Koordinaten definieren und anschließend an den Gitterpunkten Einträge vornehmen. Voraussetzung ist natürlich ausreichend Abstand zwischen den Gitterpunkten.

Im folgenden werden nach dem Erstellen der Struktur überall Punkte eingefügt und außerdem wird eine Kreisnode um die Zelle in der 6.Zeile der 5.Spalte gezeichnet:

Open in writeLaTeX
\documentclass[tikz,margin=5mm]{standalone}
\usetikzlibrary{positioning}

\begin{document}
\begin{tikzpicture}[
  every node/.append style={%
    minimum width=0.5cm,
    minimum height=0.5cm,
  }
]
 %Festlegungen:
  \newcommand\zeilen{10} % Anzahl der Zeilen
  \newcommand\spalten{9} % Anzahl der Spalten
  \newcommand\habst{0.5cm} % Abstand zwischen Knoten in unterster Zeile
  \newcommand\vabst{0.5cm} % Abstand zwischen Reihen
  \newcommand\zhabst{0.1cm} % Vergrößerung des horizontalen Abstandes
 %Node links unten:
  \coordinate(T-\zeilen-1); 
 %unterste Zeile:
  \foreach[evaluate=\i as \j using int(\i-1)] \i in {2,...,\spalten}
    \coordinate[right=\habst of T-\zeilen-\j] (T-\zeilen-\i);
 %restliche Noden:
  \foreach[evaluate=\s as \v using int(\s-1)] \s in {1,...,\spalten}{
    \foreach[evaluate=\r as \z using int(\r-1)] \r in {\zeilen,...,2}
      \coordinate[above right=\vabst and \v*\zhabst of T-\r-\s.north,anchor=south]
        (T-\z-\s);
    }
  %
  \foreach \z in {1,...,\zeilen}{
    \foreach \s in {1,...,\spalten}
      \node[circle,fill,minimum size=2pt,inner sep=0pt] at (T-\z-\s){};
  }
  \node[circle,draw,red] at (T-6-5){x};
\end{tikzpicture}
\end{document}

alt text

Permanenter link

beantwortet 02 Mär '14, 18:40

esdd's gravatar image

esdd
17.8k284257
Akzeptiert-Rate: 62%

Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

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ügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×731
×76

gestellte Frage: 02 Mär '14, 14:36

Frage wurde gesehen: 9,071 Mal

zuletzt geändert: 02 Mär '14, 18:40