Anzeige:
Ergebnis 1 bis 4 von 4

Thema: pgfplots table

  1. #1
    Registrierter Benutzer
    Registriert seit
    06.06.2009
    Beiträge
    36

    pgfplots table

    Hallo,

    ich möchte, dass bei folgendem Minimalbeispiel die rote Kurve nur von -3 bis 6 gezeichnet wird, die blaue aber von -6 bis 6. Zuerst dachte ich das sollte mit domain funktionieren, aber das scheint nichts zu machen.
    Wie kann ich pgfplots sagen, dass es erst ab einer bestimmten Zeile anfängt zu ploten? Noch schöner wäre es, wenn ich ihm sagen könnte: "Fang erst bei x>-3 an".
    Das kann ja eigentlich nicht so schwer sein, aber ich find grade nix dazu.
    Danke!
    Code:
    \documentclass{article}
    \usepackage[utf8]{inputenc}
    \usepackage{tikz}
    \usepackage{pgfplots}
    
    \begin{document}
    \pagestyle{empty}
    
    \begin{tikzpicture}[smooth]
        \begin{axis}[%
            axis x line=center,%
            axis y line=center,%
            xmin=-6,%
            xmax=6.1,%
            ymin=-0.5,%
            ymax=1.1,%
        ]%
            
            \addplot[color=blue] plot table[x=r, y=PSFn] {data.txt};
            \addplot[color=red, domain=-3:6] plot table[x=r, y=quot2n] {data.txt};
    
        \end{axis}
    \end{tikzpicture}
    
    \end{document}
    Anhang 3575

  2. #2
    Registrierter Benutzer
    Registriert seit
    11.06.2008
    Beiträge
    151
    Hi,

    ich habe Dir diese Lösung anzubieten. Habe auch noch die Option restrict x to domain=min:max gefunden, aber nicht zum laufen gebracht. Vielleicht schaust Du Dir das noch mal in der Doku an.

    Code:
    \documentclass{article}
    \usepackage[utf8]{inputenc}
    \usepackage{tikz}
    \usepackage{pgfplots}
    
    \begin{document}
    \pagestyle{empty}
    
    \begin{tikzpicture}[smooth]
        \begin{axis}[%
            axis x line=center,%
            axis y line=center,%
            xmin=-6,%
            xmax=6.1,%
            ymin=-0.5,%
            ymax=1.1,%
        ]%
        
            \addplot[color=blue] plot table[x=r, y=PSFn] {data.txt};
            \addplot[color=red] plot table[x=r, y=quot2n,skip coords between index={0}{86}]{data.txt};
    
        \end{axis}
    \end{tikzpicture}
    
    \end{document}
    Gruß
    Kristian

  3. #3
    Registrierter Benutzer Avatar von voss
    Registriert seit
    10.04.2005
    Beiträge
    5.045
    Zitat Zitat von TheLawyer Beitrag anzeigen
    ich möchte, dass bei folgendem Minimalbeispiel die rote Kurve nur von -3 bis 6 gezeichnet wird, die blaue aber von -6 bis 6. Zuerst dachte ich das sollte mit domain funktionieren, aber das scheint nichts zu machen.
    Wie kann ich pgfplots sagen, dass es erst ab einer bestimmten Zeile anfängt zu ploten? Noch schöner wäre es, wenn ich ihm sagen könnte: "Fang erst bei x>-3 an".
    Das kann ja eigentlich nicht so schwer sein, aber ich find grade nix dazu.
    wenn du nicht auf pgfplots angewiesen bist:

    Code:
    \documentclass{article}
    \usepackage{pst-plot}
    
    \begin{document}
    
    \psset{llx=-0.5,lly=-0.2,xAxisLabel=r}
    \readdata[ignoreLines=1]{\data}{/tmp/Download/data.txt}
    
    \begin{psgraph}[linecolor=black!50,Dx=2,Dy=0.5,
      ticksize=-3pt]{->}(0,0)(-6,0)(6,1.1){8cm}{4cm}
     \listplot[linecolor=blue,linewidth=1pt,plotNoMax=4,
       xStart=-6,xEnd=6]{\data}
     \listplot[linecolor=red,linewidth=1pt,plotNoMax=4,plotNo=4,
       xStart=-3,xEnd=6]{\data}
    \end{psgraph}
    
    \end{document}
    Herbert

  4. #4
    Registrierter Benutzer
    Registriert seit
    06.06.2009
    Beiträge
    36
    Ahja, danke Kristian. Das klappt gut.
    restrict to domain hatte ich auch gefunden, aber den Absatz gleich drüber nicht :/

    @Herbert: Danke, aber ich möchte vorerst bei tikz bleiben, obwohl mir das xStart und xEnd sehr nützlich erscheint.

Lesezeichen

Berechtigungen

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