Es ist doch etwas komplizierter und verschachtelter geworden als ich dachte.
Falls das jemand einfacher hinbekommt, gerne.
In folgendem Code kann man eine `Unterteilungstiefe` 4 oder 2 oder 1 eingeben, für pi/4- oder pi/2- oder pi-Skalierung.
[![alt text][1]][1]
     %\documentclass[]{article}
    \documentclass[border=5mm, tikz]{standalone}
    \usepackage{pgfplots}
    \pgfplotsset{compat=1.13}
    
    \begin{document}
    
    
    \def\Unterteilungstiefe{4} % 4 oder 2  oder 1
    % Reichweite der Ticks festlegen
    \def\Range{-5,...,10}
    % xticklist erstellen
    \newcommand{\xticklist}{}% Name reservieren
    \let\xticklist=\empty% Liste erstellen
    \makeatletter
    \foreach \n  in \Range
    {
    \pgfmathparse{pi*\n/\Unterteilungstiefe}%
      \ifx\empty\xticklist{} \protected@xdef\xticklist{\pgfmathresult}%
      \else \protected@xdef\xticklist{\xticklist,\pgfmathresult}%
      \fi
    }\makeatother
    %Anzeigen: \xticklist
    
    
    \begin{tikzpicture}[]
    \begin{axis}[width=7cm,
    font=\footnotesize, 
    x = 0.785 cm, 
    axis lines=middle, 
    xtick/.expanded = {\xticklist},           
    xticklabel={%
    % Pi-Ganze-Einheiten
    \pgfmathsetmacro{\g}{((\tick/pi))}%
    \pgfmathsetmacro{\gP}{int(ceil(\tick/pi))}%
    \pgfmathsetmacro{\gN}{int(abs(floor(\tick/pi)))}%
\pgfmathsetmacro{\gP}{int(ceil(\g))}%
    \pgfmathsetmacro{\gN}{int(abs(floor(\g)))}%
    \def\GanzePositivSonst{(mod(\gP,1) == 0 ? "\gP\pi" : "p")}%
    \def\GanzePositivEins{\gP == 1 ? "\pi"}%
    \def\GanzePositiv{\GanzePositivEins : (\GanzePositivSonst)}%
    \def\GanzeNegativSonst{mod(\gN,1) == 0 ? "-\gN\pi" : "n"}%
    \def\GanzeNegativEins{\gN == 1 ? "-\pi"}%
    \def\GanzeNegativ{\GanzeNegativEins : (\GanzeNegativSonst)}%
    % Pi-Halbe-Einheiten
    \pgfmathsetmacro{\h}{((\tick*2/pi))}%
    \pgfmathsetmacro{\hP}{int(ceil(\tick*2/pi))}%
    \pgfmathsetmacro{\hN}{int(abs(floor(\tick*2/pi)))}%
\pgfmathsetmacro{\hP}{int(ceil(\h))}%
    \pgfmathsetmacro{\hN}{int(abs(floor(\h)))}%
    \def\HalbePositivSonst{(mod(\hP,2) == 1 ? "\frac{\hP\pi}{2}" : (\GanzePositiv))}%
    \def\HalbePositivEins{\hP == 1 ? "\frac{\pi}{2}"}%
    \def\HalbePositiv{\HalbePositivEins : (\HalbePositivSonst)}%
    \def\HalbeNegativSonst{mod(\hN,2) == 1 ? "-\frac{\hN\pi}{2}" : (\GanzeNegativ)}%
    \def\HalbeNegativEins{\hN == 1 ? "-\frac{\pi}{2}"}%
    \def\HalbeNegativ{\HalbeNegativEins : (\HalbeNegativSonst)}%
    % Pi-Viertel-Einheiten
    \pgfmathsetmacro{\v}{((\tick*4/pi))}%
    \pgfmathsetmacro{\vP}{int(ceil(\tick*4/pi))}%
    \pgfmathsetmacro{\vN}{int(abs(floor(\tick*4/pi)))}%
\pgfmathsetmacro{\vP}{int(ceil(\v))}%
    \pgfmathsetmacro{\vN}{int(abs(floor(\v)))}%
    \def\ViertelPositivSonst{(mod(\vP,2) == 1 ? "\frac{\vP\pi}{4}" : (\HalbePositiv))}%
    \def\ViertelPositivEins{\vP == 1 ? "\frac{\pi}{4}"}%
    \def\ViertelPositiv{\ViertelPositivEins : (\ViertelPositivSonst)}%
    \def\ViertelNegativSonst{mod(\vN,2) == 1 ? "-\frac{\vN\pi}{4}" :  (\HalbeNegativ)}%
    \def\ViertelNegativEins{\vN == 1 ? "-\frac{\pi}{4}"}%
    \def\ViertelNegativ{\ViertelNegativEins : (\ViertelNegativSonst)}%
    %
    \pgfmathparse{\tick > 0 ? (\ViertelPositiv) : (\ViertelNegativ) 
    }$\pgfmathresult$
    },
    %minor xtick/.expanded = {\xticklist},
    enlarge y limits=.125,
    ]
    \addplot[domain=-5:9, samples=300] {sin(deg(x))}; 
    \end{axis}
    \end{tikzpicture}
    
    \end{document}
  [1]: http://texwelt.de/wissen/upfiles/999999999999999_3.jpg