alt text

Hallo!

Ich habe kürzlich einen Graphen mit TikZ erstellt (es geht hier um die sogen. "Fermatsche Integration"). Nun geht mir TikZ recht leicht von der Hand, mit pgfplots tue ich mich noch schwer, etwa wegen den teils schon unterschiedlichen Notationen und, um es nicht zu vergessen, mir in Details zu viele Vorgaben gemacht werden (z.B. Pfeilspitzen oder sowas). Wobei das Paket pgfplots schon eine beachtliche Leistung ist (siehe z.B. das ternary diagram) und mir auffällt, daß sich dort der Code ggü. Tikz oft drastisch verkürzt.

Meine Frage ist ist also eher allgemeiner Natur, ich weiß nicht, ob sie sich beantworten läßt. Wäre z.B. bei diesem Graphen pgfplots sinnvoller gewesen?

Danke!

Open in writeLaTeX
\documentclass[varwidth, margin=5pt]{standalone}
\usepackage[ngerman]{babel}
\usepackage{tikz}
  \usetikzlibrary{calc} 
\usepackage{amsmath, amssymb}

\pagecolor{lightgray!40}
%===========
\begin{document}
%===========
\def\r{0.725}
\def\a{4}
\begin{tikzpicture}[font=\footnotesize, >=latex, scale=0.85]
%KoSy
%\draw[very thin,color=gray] (-2,-4) grid (3,4);
\draw[->] (-0.5,0) -- (5.5,0) node[right, below] {$x$};
\draw[->] (0,-0.5) -- (0,4.5) node[above, left] {$y$};

%Achsenbeschriftung
%Ursprung
\node[below left] {$0$};

% ----------------
\coordinate (Nx) at (\a,0);
\coordinate (Ny0) at ($({0},{0.2*\a^2})$);
\coordinate (Ny) at ($({\a},{0.2*\a^2})$);

\coordinate (Mx) at ($({\a*\r},{0})$);
\coordinate (My0) at ($({0},{0.2*(\a*\r)^2})$);
\coordinate (My1) at ($({\a*\r},{0.2*(\a)^2})$);
\coordinate (My) at ($({\a*\r},{0.2*(\a*\r)^2})$);

\coordinate (Lx) at ($({\a*\r^2},{0})$);
\coordinate (Ly0) at ($({0},{0.2*(\a*\r^2)^2})$);
\coordinate (Ly1) at ($({\a*\r^2},{0.2*(\a*\r)^2})$);
\coordinate (Ly) at ($({\a*\r^2},{0.2*(\a*\r^2)^2})$);

\coordinate (Kx) at ($({\a*\r^3},{0})$);
\coordinate (Ky0) at ($({0},{0.2*(\a*\r^3)^2})$);
\coordinate (Ky1) at ($({\a*\r^3},{0.2*(\a*\r^2)^2})$);
\coordinate (Ky) at ($({\a*\r^3},{0.2*(\a*\r^3)^3})$);
% ----------------

%x-Achse:
\draw[] ([yshift=2pt]Nx.north)--([yshift=-2pt]Nx.south) node[below]{$a \vphantom{ar^2}$};
\draw[] ([yshift=2pt]Mx.north)--([yshift=-2pt]Mx.south) node[below]{$ar\vphantom{ar^2}$};
\draw[] ([yshift=2pt]Lx.north)--([yshift=-2pt]Lx.south) node[below]{$ar^2$};
\draw[] ([yshift=2pt]Kx.north)--([yshift=-2pt]Kx.south) node[below]{$ar^3$};

\node[] at ([xshift=-15mm, yshift=-3mm]Lx.south west) {\Large$...$};

%y-Achse:
\draw[] ([xshift=2pt]Ny0.east)--([xshift=-2pt]Ny0.west) node[left]{$a^m$};
\draw[] ([xshift=2pt]My0.east)--([xshift=-2pt]My0.west) node[left]{$(ar)^m$};
\draw[] ([xshift=2pt]Ly0.east)--([xshift=-2pt]Ly0.west) node[left]{$(ar^2)^m$};
\draw[] ([xshift=2pt]Ky0.east)--([xshift=-2pt]Ky0.west) node[left]{$(ar^3)^m$};

%Rechtecke
\draw[thin] (Nx) -- (Ny)  -- (My1) -- (Mx);
\draw[thin] (My) -- (Ly1) -- (Lx);
\draw[thin] (Ly) -- (Ky1) -- (Kx);

%Kurve
\draw[] plot[domain=0:4.5, samples=400,] (\x,{0.2*\x^2}) node[right] {$y=x^m$};

\end{tikzpicture}
%===========
\end{document}
%===========

gefragt 21 Aug '14, 08:37

cis's gravatar image

cis
5.4k860169
Akzeptiert: 68%

1

Pgfplots ist vor allem dafür konzipiert, aus Messwerten Diagramme zu erstellen. Wenn um das Plotten von Funktionen und ggf. das Einfügen irgendwelcher Annotations geht, dann ist TikZ (besonders seit 3.0) imho besser geeignet.

(21 Aug '14, 08:57) Johannes

Zu pgfplots würde ich wechseln, wenn z.B. einer der Punkte zutrifft:

  • es ist eine von pgfplots bereitgestellte Daten-Visualisierung (stacked plot, polar plot, ternary plot, log plot, ...) wo man nur noch Dateien einlesen lässt und ein paar Optionen setzt,
  • ich verwende Achsen, statt eigenhändig zu zeichnen kann ich das Aussehen über Optionen festlegen (wobei ab TikZ 3 schon sehr gute Achsenformate kommen)
  • es soll ein dreidimensionaler Plot werden,
  • ich verarbeite ein externes Datenfile.

Das hier gezeigte Beispiel ist natürlich ein ganz einfaches, wo man mit pgfplots noch nicht viel gewinnen oder einsparen kann. Wenn man sowieso komplexere Plots haben könnte, lohnt sich die Einarbeitung in pgfplots, und dann sind auch die einfachen Plots damit Routinesache und konsistent im Aussehen zu den komplexeren.

Einen Eindruck von den Fähigkeiten bieten neben dem Handbuch z.B. die PGFPlots-Galerie und auch die TeXwelt-Beispiele. Bei Plots will ich gar nicht mehr auf pgfplots verzichten. Mit TikZ ergänzend etwas einzeichnen geht immer noch.

Permanenter link

beantwortet 21 Aug '14, 08:59

stefan's gravatar image

stefan ♦♦
5.8k12134

bearbeitet 21 Aug '14, 09:09

Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Aktuelle Buch-Infos

LaTeX Cookbook

LaTeX Beginners Guide

Limitierter Rabatt ebook
50% Coupon code tDRet6Y

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

Zugeordnete Themen:

×492
×160

Frage gestellt: 21 Aug '14, 08:37

Frage wurde angeschaut: 2,438 Mal

Zuletzt aktualisiert: 21 Aug '14, 09:09