Anzeige:
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 15 von 21

Thema: Tikz in Latex benutzen, Funktionen plotten

  1. #1
    Registrierter Benutzer
    Registriert seit
    23.06.2010
    Beiträge
    72

    Tikz in Latex benutzen, Funktionen plotten

    Hallo,

    ich würde gerne einfache Funktion in Latex plotten. Zum Beispiel:
    Code:
    \documentclass{article}
    
    \usepackage[latin1]{inputenc}
    \usepackage{tikz}
    
    % GNUPLOT required
    \begin{document}
    \pagestyle{empty}
    
    
    \begin{tikzpicture}[domain=0:4]
        \draw[very thin,color=gray] (-0.1,-1.1) grid (3.9,3.9);
        \draw[->] (-0.2,0) -- (4.2,0) node[right] {$x$};
        \draw[->] (0,-1.2) -- (0,4.2) node[above] {$f(x)$};
        \draw[color=red] plot[id=x] function{x} 
            node[right] {$f(x) =x$};
        \draw[color=blue] plot[id=sin] function{sin(x)} 
            node[right] {$f(x) = \sin x$};
        \draw[color=orange] plot[id=exp] function{0.05*exp(x)} 
            node[right] {$f(x) = \frac{1}{20} \mathrm e^x$};
    \end{tikzpicture}
    
    \end{document}
    Ich habe jetzt schon mehrere stunden nach einer Lösung gesucht und nicht gefunden. Das heißt Texniccenter gibt mir irgendwie ein komisches Ergebnis aus. Ich erhalte zwar ein Koordinatensystem, aber die Funktionen sind darin nicht geplottet.

    Ich habe mir bereits gnu plot hier
    http://www.tatsuromatsuoka.com/gnuplot/Eng/winbin/

    (0001) heruntergeladen, entpackt und in C/Programme kopiert. Ich habe auch über den Miktex PackageManager gnuplottex installiert.

    Kann mir bitte einer helfen, was ich noch machen muss. Ich finde nirgends eine konkrete Anleitung dafür.

  2. #2
    Registrierter Benutzer Avatar von mechanicus
    Registriert seit
    10.07.2008
    Ort
    Hamburg
    Beiträge
    3.944
    Hi,

    schaue dir bitte pgfplots an. Dieses Paket, welches auf tikz baut, vereinfacht vieles.

    Gruß
    Marco

  3. #3
    Registrierter Benutzer
    Registriert seit
    23.06.2010
    Beiträge
    72
    kannst du mir nicht sagen, was an meinem minimabeispiel falsch ist, bzw. welches package ich noch einbinden muss? Also wie ich gnuplot richtig einbinde?

  4. #4
    Registrierter Benutzer Avatar von Stefan_K
    Registriert seit
    05.04.2007
    Ort
    Hamburg
    Beiträge
    3.534
    Ein kleines pgfplots Beispiel:

    Code:
    \documentclass{minimal}
    \usepackage{pgfplots}
    \begin{document}
    \begin{tikzpicture}
        \begin{axis}[domain=0:2,legend pos=outer north east]
        \addplot[mark=none]{sin(deg(x))}; 
        \addplot[mark=none]{e^x};
        \legend{$\sin(x)$,$\mathrm{e}^x$}
        \end{axis}
    \end{tikzpicture}
    \end{document}


    Stefan
    Geändert von Stefan_K (06-04-2014 um 15:31 Uhr)

  5. #5
    Registrierter Benutzer
    Registriert seit
    23.06.2010
    Beiträge
    72
    d.h. ich kann auch ohne gnuplot plotten?!

    Mich würde allerdings schon auch interessieren, wie ich mein Beispiel mit gnuplot kompilieren kann. Oder ist das ein zu großer Aufwand?

  6. #6
    Registrierter Benutzer Avatar von Stefan_K
    Registriert seit
    05.04.2007
    Ort
    Hamburg
    Beiträge
    3.534
    Wo hast Du denn Dein Beispiel her?

    Stefan

  7. #7
    Registrierter Benutzer
    Registriert seit
    23.06.2010
    Beiträge
    72

  8. #8
    Registrierter Benutzer Avatar von mechanicus
    Registriert seit
    10.07.2008
    Ort
    Hamburg
    Beiträge
    3.944
    Hi,

    Stefan zeigte dir bereits ein Beispiel mit pgfplots. Wenn du gnuplot verwenden willst (was auch mit pgfplots geht), dann musst du mittels shell-escape kompilieren, so dass LaTeX das Programm gnuplot aufrufen darf.

    Marco

  9. #9
    Registrierter Benutzer Avatar von Stefan_K
    Registriert seit
    05.04.2007
    Ort
    Hamburg
    Beiträge
    3.534
    Und hast Du Dir auch die Kommentare dort durchgelesen? Dort stehen 41 Kommentare, dazu sehr viele GNUplot betreffend.

    Stefan

  10. #10
    Registrierter Benutzer Avatar von cgnieder
    Registriert seit
    06.04.2011
    Ort
    Herrenberg
    Beiträge
    254
    Zitat Zitat von zac Beitrag anzeigen
    Kann mir bitte einer helfen, was ich noch machen muss. Ich finde nirgends eine konkrete Anleitung dafür.
    Dein Code funktioniert wunderbar, allerdings musst Du pdflatex auch erlauben, auf gnuplot zuzugreifen. Das heißt, Du musst das file z.B mit
    Code:
    pdflatex --shell-escape deinfile.tex
    kompilieren.
    Clemens

  11. #11
    Registrierter Benutzer
    Registriert seit
    23.06.2010
    Beiträge
    72
    wo genau muss ich

    pdflatex --shell-escape deinfile.tex

    eingeben?

    Bei Ausgabe - Ausgabeprofile definieren... - Argumente, die an den Compiler übergeben werden sollen:

    Ist das richtig? Das habe ich gemacht, ich erhalte nun keine Fehler oder Warnungen mehr beim Kompilieren, allerdings werden die beiden Funktionen nicht im Koordinatensystem eingezeichnet?

    Kann mir bitte einer helfen?

    Habe ich gnuplot vielleicht nicht richtig installiert (bzw. im richtigen Ordner?)

  12. #12
    Registrierter Benutzer Avatar von mechanicus
    Registriert seit
    10.07.2008
    Ort
    Hamburg
    Beiträge
    3.944
    Was hast du denn für ein Betriebssystem?

    Mit MikTeX ist es nicht --shell-escape sonder --enable-write18

    Marco

  13. #13
    Registrierter Benutzer
    Registriert seit
    23.06.2010
    Beiträge
    72
    Ich habe win 7

    und habe es mit

    --enable-write18

    ausprobiert. Funktioniert aber leider nicht. Habe ich es denn überhaupt an richtiger Stelle eingegeben?

  14. #14
    Registrierter Benutzer Avatar von bobmalaria
    Registriert seit
    28.11.2006
    Ort
    Düsseldorf
    Beiträge
    4.174
    hi,

    ja es muss im texniccenter da rein wo steht "argumente die an den compiler übergeben werden"

    dein problem ist vermutlich das gnuplot nicht gefunden wird. du hast gnuplot ja sicher "installiert" indem du dir ein zip-archiv heruntergeladen hast und dieses dann irgendwohin entpackt hast.

    jetzt weiss latex leider nicht wo deine gnuplot.exe steckt. das einfachste ist nun den gnuplot ordner in die umgebungsvariablen einzutragen. also z.b. c:\gnuplot\bin, wenn im bin ordern die gnuplot.exe steckt.

    wie man an die umgebunsvariablen kommt ist hier im screenshot zu sehen




    das ist eine liste die mit ; getrennte einträge enthält. hänge deinen pfad von gnuplot einfach hinten dran.

    dann sollte gnuplot.exe überall auf deinem system gefunden werden, auch von von latex bzw. pdflatex
    Mein Ball ist umgefallen

  15. #15
    Registrierter Benutzer
    Registriert seit
    23.06.2010
    Beiträge
    72
    ah, hinten dranhängen, ich probiers kurz

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •