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