can be used with different programming languages:
Julia (http://julialang.org/)
Python (https://www.python.org/)
and many others ...
mix of text, code and results
media
images, audio, video
anything a web browser can display
equations
interactive local use
static online HTML pages on http://nbviewer.jupyter.org/
interactive online use at https://mybinder.org/
nbconvert
HTML
$\mathrm{\LaTeX}$ $\to$ PDF
.py
files
...
slide shows!
<audio>
tag¶import soundfile as sf
sig, fs = sf.read('data/singing.wav')
%matplotlib inline
import matplotlib.pyplot as plt
import numpy as np
t = np.arange(len(sig)) / fs
plt.plot(t, sig)
plt.xlabel('time / seconds')
plt.grid()
Squared magnitude of the Short Time Fourier Transform (STFT)
$$|\text{STFT}\{x[n]\}(m, \omega)|^2 = \left| \sum_{n=-\infty}^\infty x[n]w[n-m] \text{e}^{-j \omega n}\right|^2$$plt.specgram(sig, Fs=fs)
plt.ylabel('frequency / Hz')
plt.xlabel('time / seconds')
plt.ylim(0, 10000);
%matplotlib inline
import sympy as sp
sp.init_printing()
t, sigma, omega = sp.symbols(('t', 'sigma', 'omega'))
sigma = -2
omega = 10
s = sigma + sp.I * omega
x = sp.exp(s * t)
x
sp.plotting.plot(sp.re(x),(t, 0, 2 * sp.pi), ylim=[-2, 2], ylabel='Re{$e^{st}$}')
sp.plotting.plot(sp.im(x),(t, 0, 2 * sp.pi), ylim=[-2, 2], ylabel='Im{$e^{st}$}');
That's it for now!