Ich habe ein Diagramm mit zwei (im Prinzip gleichen) x Achsen. Da es hier wirklich nur um die Achsen geht, lasse ich den Inhalt mal weg.

Zur Herausforderung:

-Sowohl die blauen (tick num = 1) als auch die grünen (tick num = 11) Markierungen sollen auf beiden Achsen erscheinen.

-Die schwarze Markierung bei 57.2 soll nicht angezeigt werden (nur der rote Strich). alt text

Open in Online-Editor
   \documentclass[12pt]{article}  
   \usepackage{pgfplots}
   \pgfplotsset{compat=newest}
   \usepackage{pgfplotstable}
       \begin{document}             
            \begin{tikzpicture}             
                \pgfplotsset{
                    every linear axis/.append style={
                        width=18cm,
                        height=3cm,
                        xmin=55,
                        xmax=68,
                        xtick={55,...,68},
                    %   xticklabel=\empty,
                        axis y line=none,
                        ymin=1,
                        ymax=3,
                        enlarge y limits=.4,
                        major tick length = 10pt,
                        major tick style={line width=1pt,draw=black},
                        minor tick length = 4pt,
                        minor tick style ={line width=.2pt,blue},
                    }
                }   
                % obere x-Achse und roter Strich bei 57     
                \begin{axis}[
                axis x line = top,
                minor tick num=1,
                minor tick length = 6pt,
                extra x ticks=57.2,
                extra x tick style={xticklabel=\empty, grid=major,major grid style={line width=.9pt,draw=red}}
                ]
                \end{axis}
                %untere x-Achse
                \begin{axis}[
                axis x line = bottom,
                minor tick num=11,
                minor tick style={line width=.5pt,draw=green},
                xticklabel=\empty,
                ]
                \end{axis}          
            \end{tikzpicture}\\             
\end{document}

gefragt 19 Sep, 10:15

TimBo's gravatar image

TimBo
291
Akzeptiert: 0%

bearbeitet 19 Sep, 10:19


Vom Prinzip her suchst Du vermutlich etwas wie:

alt text

alt text

Die blauen Teilstriche habe ich dabei mal genauso breit wie die grünen gemacht.

Code:

Open in Online-Editor
\documentclass[margin=5pt]{standalone}  
\usepackage{pgfplots}
\pgfplotsset{compat=newest}

\begin{document}
\begin{tikzpicture}
% einheitliche Einstellungen für das Koordinatensystem
\pgfplotsset{
  every linear axis/.append style={
  width=18cm,
  height=3cm,
  xmin=55,
  xmax=68,
  xtick={55,...,68},
  axis y line=none,
  ymin=1,
  ymax=3,
  enlarge y limits=.4,
  minor tick length=4pt, 
  minor tick style={line width=.5pt},
  xtick align=center% xticks zentriert zu einzelnen Achsen
  }
}   
  % beide Achsen mit Haupt-Ticks und je 11 grünen Teilstrichen
  \begin{axis}[
    x axis line style={-stealth},% Pfeile an Achsenenden
    xticklabel pos=right,% xticklabel nur an oberer Achse
    major tick length = 10pt,
    major tick style={line width=1pt,draw=black},
    minor tick num=11,
    minor tick style={draw=green},
    ]
  \end{axis}
  % blaue Teilstriche und roter Strich
  \begin{axis}[
    axis lines/.append style={draw=none},% Achsen nicht ein 2.Mal zeichnen
    xticklabel=\empty,% keine Ticklabels
    major tick length = 0pt,% Haupt-Ticks nicht zeichnen
    minor tick num=1,
    minor tick style ={blue},
    extra x ticks=57.2,
    extra x tick style={
      grid=major,
      major grid style={line width=.9pt,draw=red}
    }
    ]
  \end{axis}
\end{tikzpicture}
\end{document}

Man kommt dafür wieder mit nur zwei axis Umgebungen aus. Die zweite wird nur wegen der zusätzlichen blauen Teilstriche benötigt. Den roten Strich könnte man auch in der ersten zeichnen lassen:

Open in Online-Editor
\documentclass[margin=5pt]{standalone}  
\usepackage{pgfplots}
\pgfplotsset{compat=newest}

\begin{document}
\begin{tikzpicture}
% einheitliche Einstellungen für das Koordinatensystem
\pgfplotsset{
  every linear axis/.append style={
  width=18cm,
  height=3cm,
  xmin=55,
  xmax=68,
  xtick={55,...,68},
  axis y line=none,
  ymin=1,
  ymax=3,
  enlarge y limits=.4,
  minor tick length=4pt, 
  minor tick style={line width=.5pt},
  xtick align=center% xticks zentriert zu einzelnen Achsen
  }
}   
  % beide Achsen mit Haupt-Ticks und je 11 grüne Teilstrichen
  % sowie roter Strich
  \begin{axis}[
    x axis line style={-stealth},% Pfeile an Achsenenden
    xticklabel pos=right,% xticklabel nur an oberer Achse
    major tick length = 10pt,
    major tick style={line width=1pt,draw=black},
    minor tick num=11,
    minor tick style={draw=green},
    extra x ticks=57.2,
    extra x tick style={
      major tick length=0pt,% Tick nicht zeichnen
      xticklabel=\empty,% keine Ticklabels
      grid=major,
      major grid style={line width=.9pt,draw=red}
    }
    ]
  \end{axis}
  % blaue Teilstriche
  \begin{axis}[
    axis lines/.append style={draw=none},% Achsen nicht ein 2.Mal zeichnen
    xticklabel=\empty,% keine Ticklabels
    major tick length = 0pt,% Haupt-Ticks nicht zeichnen
    minor tick num=1,
    minor tick style ={blue}
    ]
  \end{axis}
\end{tikzpicture}
\end{document}
Permanenter link

beantwortet 19 Sep, 10:54

esdd's gravatar image

esdd
14.2k53251

bearbeitet 19 Sep, 17:20

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
×2

Frage gestellt: 19 Sep, 10:15

Frage wurde angeschaut: 324 Mal

Zuletzt aktualisiert: 19 Sep, 17:20