import pyfar as pf
import matplotlib.pyplot as plt
signal = pf.signals.impulse(64, 10)
pf.plot.use()
_, ax = plt.subplots(3, 1, figsize=(8, 8))
pf.plot.time_freq(signal, ax=ax[:2], label="input", unit='ms')
pf.plot.group_delay(signal, ax=ax[2], unit="samples")
for order in [30, 6]:
    delayed = pf.dsp.fractional_time_shift(
        signal, 2.3, order=order)
    pf.plot.time_freq(delayed, ax=ax[:2],
                      label=f"delayed, order={order}", unit='ms')
    pf.plot.group_delay(delayed, ax=ax[2], unit="samples")
ax[1].set_ylim(-15, 5)
ax[2].set_ylim(8, 14)
ax[0].legend()
