PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Markierung in Grafik von Skalierung entkoppeln



holululu
18-01-2014, 13:19
Hallo zusammen.

Ich möchte eine Grafik darstellen, bei der die Markierungen nicht skaliert werden, sondern die ursprüngliche Größe behalten.

Leider werde ich dazu nicht fündig.
Über Hilfe würde ich mich freuen.
Danke im Voraus!

Ein Minimalbeispiel sieht folgendermaßen aus:

\documentclass[a4paper]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{graphicx}
\usepackage{tikz}
\usetikzlibrary{decorations.pathreplacing}

\begin{document}

\begin{center}
\begin{figure}[!htbp]
\begin{tikzpicture}
\begin{scope}[xscale=1, yscale=0.1]
%Raster zeichnen
%\draw [color=gray!70] [step=5mm] (0,0) grid (5,5);
% Achsen zeichnen
\draw[->,thick] (0,0) -- (6,0) node[right] {$x$};
\draw[->,thick] (0,0) -- (0,6) node[above] {$y$};
% Achsen beschriften
%\draw (1,-.2) -- (1,0) node[below=4pt] {$\scriptstyle1$};
\foreach \x in {1,...,5}
\draw (1*\x,-0.1) -- (1*\x,0) node[below=4pt] {$\scriptstyle \x$};

\foreach \y in {0,5}
\draw (-.1,\y) -- (.1,\y) node[left=4pt] {$\scriptstyle\y$};
%Plotten
\draw plot [only marks, mark=*] coordinates{(1,1)};
\end{scope}
\end{tikzpicture}
\caption{}
\label{fig:Referenz}
\end{figure}
\end{center}
\end{document}

Das Ziel ist, dass zwar die Skalierung beibehalten wird, die Markierung aber in Normalgröße dargestellt wird.

Vielen Dank für eure Hilfe!
Beste Grüße,
holululu

maike
18-01-2014, 18:47
Mir ist ehrlich gesagt überhaupt nicht klar, was du meinst.
Die Markierungen auf der x-Achse?
Und du möchtest das Bild nicht skalieren, sondern einen Ausschnitt des Bildes?

holululu
18-01-2014, 22:33
Ich möchte bei einer Erweiterung der "Grafik", bspw. die X-Achse 10 Einheiten und die Y-Achse 45 Einheiten und einer gleichzeitigen Stauchung der Achsen erreichen, dass die verwendete Markierung nicht mitgestaucht wird.

Bei der oben genannten Länge von 45 Einheiten nimmt die Abbildung zu viel Platz ein. Skaliere ich die Y-Achse auf 10 % der Ausgangslänge resultiert das zwangsläufig in einer Skalierung der Markierung.

Mit Markierung meine ich das Zeichen, welches bei dem betrachteten Punkt gesetzt wird.
In dem Beispiel wird der Punkt (1,1) mit einem Zeichen markiert.

Dieses wird bei einer Stauchung der Y-Achse auf 10 % der Ausgangslänge ebenfalls mitgestaucht. Das möchte ich gerne verhindern, denn es sieht nicht schön aus.

Ich hoffe, dass es etwas klarer geworden ist.
Viele Grüße

Magger
19-01-2014, 11:52
Hallo holululu.

ein paar Tipps und Hinweise:

für LaTeX-Quellcode im Forum gibt es ein dafür gemachte Code-Umgebung
Warum fügst du das tikzpicture in eine figure-Gleitumgebung, die aber nicht gleiten soll [!htbp] und auch nicht gleiten kann, weil sie noch in einer center-Umgebung steckt. Eine reine center-Umgebung hätte auch gereicht, weil ja auch gar keine caption abgegeben ist.
Was soll auf dem Bild dargestellt werden? Für Diagramme und Koordinatensysteme gibt es ein eigenes Paket namens pgfplots, das auf TikZ aufbaut und sich z.B. von allein um die entsprechende Skalierung der Achsen kümmert.

hakaze
19-01-2014, 13:35
2. Warum fügst du das tikzpicture in eine figure-Gleitumgebung, die aber nicht gleiten soll [!htbp] und auch nicht gleiten kann, weil sie noch in einer center-Umgebung steckt?Genau, das ist ziemlich umständlich, wenn nicht sogar falsch. Wenn eine Abbildung nicht gleiten soll, das sollte man auch die Gleitumgebung von Anfang an weglassen. Eine Unterschrift kann man dann trotzdem mit captionof setzen (wird durch das Paket capt-of und die KOMA-Script-Klassen bereitgestellt). Zum Beispiel:

\begin{center}
\begin{tikzpicture}
…Tikz-code hier
\end{tikzpicture}
\captionof{figure}{Bildunterschrift}
\label{jedesbildbrauchteinlabel}
\end{center}

Magger
19-01-2014, 19:18
@hakaze

Genau das meinte ich, wird das aus meinem Punkt 2 nicht verständlich?

peterpetersen
19-01-2014, 19:35
Hallo,
auch wenn es schon kompetente Antworten gab: Wenn du dein Beispiel wie folgt abänderst (siehe 2./3. Zeile), dann stauchst du die y-Achse auf ein Fünftel, ohne Deine „Markierung“ (Symbol für einen Punkt) mit zu verzerren. Die ticks an der x-Achse (so heißen sie bei PSTricks jedenfalls) müsstest du noch anpassen, oder vor der Skalierung zeichnen:

\begin{figure}[!htbp]
\begin{tikzpicture}[y=.2cm]
\begin{scope}[xscale=1, yscale=1]
%Raster zeichnen
%\draw [color=gray!70] [step=5mm] (0,0) grid (5,5);
% Achsen zeichnen
\draw[->,thick] (0,0) -- (6,0) node[right] {$x$};
\draw[->,thick] (0,0) -- (0,6) node[above] {$y$};
% Achsen beschriften
%\draw (1,-.2) -- (1,0) node[below=4pt] {$\scriptstyle1$};
\foreach \x in {1,...,5}
\draw (1*\x,-0.1) -- (1*\x,0) node[below=4pt] {$\scriptstyle \x$};

\foreach \y in {0,5}
\draw (-.1,\y) -- (.1,\y) node[left=4pt] {$\scriptstyle\y$};
%Plotten
\draw plot [only marks, mark=*] coordinates{(1,1)};
\end{scope}
\end{tikzpicture}
\caption{}
\label{fig:Referenz}
\end{figure}

Meine Infos habe ich dieser Seite entnommen:
http://www.statistiker-wg.de/pgf/tutorials/plot.htm

Gruß, Peter

hakaze
19-01-2014, 19:35
@Magger

Ich habe da wohl noch ein nicht gelesen, wo keins war ;) my bad! Ich habe meinen Post oben mal editiert.

holululu
20-01-2014, 10:43
Danke für die wertvolle und vor allem schnelle Hilfe!
Ich habe es mit pgfplots und TikZ umgesetzt.

Danke für den Hinweis!!
Viele Grüße,

holululu