Anzeige:
Ergebnis 1 bis 12 von 12

Thema: pgfplot mit 2ter y-achse

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Registrierter Benutzer
    Registriert seit
    10.09.2009
    Beiträge
    98
    Hi,

    das mit dem überlagerten Label scheint ein Bug mit "axis y line*" zu sein. Bei Verwendung von "axis y line" funktionier tes. Allerdings sind da dann noch die störenden Pfeilspietzen dran, die noch entfernt werden müssen. Die Farbe lässt sich leicht ändern. Das ist auch sehr gut in der Doc beschrieben ...


    Code:
    \documentclass[12pt,a4paper,oneside, chapterprefix=false]{scrreprt}
    \usepackage{pgfplots}
    \begin{document}
    
    \begin{figure}[ht] \centering
    
    \pgfplotsset {width=0.9\textwidth,height=0.4\textheight,
    xtick={1995,1999,2003,2007,2011},
    x tick label style={/pgf/number format/1000 sep=},
    xlabel={Jahr},
    y tick label style={/pgf/number format/1000 sep=},
    extra x ticks={1998},
    extra x tick labels={{1998: Einführung}},
    extra x tick style={grid=major, tick label style={rotate=90, xshift=+4.75cm, yshift=+0.25cm}},
    %ylabel={Anzahl Mitarbeiter}
    enlarge x limits=0.01}
    
    \centering
    
    \begin{tikzpicture}
    \begin{axis}
    [legend pos=north west, scale only axis,
    xmin=1995,xmax=2011,
    ymin=0, ymax=1400,
    axis y line*=left,% the ’*’ avoids arrow heads
    ylabel=Anzahl der Mitarbeiter]
    \addplot table [col sep=comma, trim cells=true, y=Mitarbeiter] {Entwicklung19952011.csv};
    \addlegendentry{Anzahl der Mitarbeiter}
    \end{axis}
    
    \begin{axis}
    [legend pos=south east, scale only axis,
    xmin=1995,xmax=2011,
    ymin=0, ymax=250,
    %
    axis y line=right,
    y  axis  line  style={-},
    %
    axis x line=none,
    ylabel=Umsatz in Mio. Euro]
    \addplot+[red, mark  options={fill=red}] table [col sep=comma, trim cells=true, y=Umsatz] {Entwicklung19952011.csv};
    \addlegendentry{Umsatz in Mio. Euro}
    \end{axis}
    
    \end{tikzpicture}
    \end{figure}
    \end{document}
    Grüße

  2. #2
    Registrierter Benutzer
    Registriert seit
    23.03.2011
    Beiträge
    12
    Hallo nochmal,

    ist es möglich bei diesem Beispiel, die Linie zwischen den ersten Punkten anderst darzustellen (z.B. gestrichelt) ?

    Also zwischen Punkt 1 und 2 "----" und ab Punkt 2 dann wieder als normale Linie.

  3. #3
    Registrierter Benutzer
    Registriert seit
    10.09.2009
    Beiträge
    98
    Hi,

    ich denke, das geht leider nicht direkt. 'xmin'/'xmax' kann man leider nicht für jeden Plot einzeln festlegen. Eine Beschränkung auf die einzulesenen Zeilen weiß ich auch nicht.

    Wenn du aber Hand anlegst, gehts auf jeden Fall. Will heißen. Erstelle 2 unterschiedliche Datendateien aus deiner Ausgangsdatei. Die eine für den ersten Datenbereich und die zweite für den anderen Datenbereich. Du musst jeweils die nicht benötigten Datensätze löscht oder per '%' bzw '#' ausklammern.
    Dann mit jeweils angepeassten addplot-Befehl die 2 Files einbinden.

    Schade, dass so ein Feature nicht eingebaut ist. Bzw. hab ich es nur übersehen?


    Viele Grüße

Lesezeichen

Berechtigungen

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