1
from itertools import product
4
from matplotlib import pyplot as plt
6
from pywt._doc_utils import (
7
draw_2d_fswavedecn_basis,
19
fig, axes = plt.subplots(1, 4, figsize=[16, 4])
22
fig, axes = plt.subplots(2, 2, figsize=[8, 8])
26
draw_2d_wp_basis(shape, wavedec2_keys(max_lev), ax=axes[0],
27
label_levels=label_levels)
28
axes[0].set_title(f'wavedec2 ({max_lev} level)')
31
draw_2d_fswavedecn_basis(shape, max_lev, ax=axes[1], label_levels=label_levels)
32
axes[1].set_title(f'fswavedecn ({max_lev} level)')
35
wp_keys = list(product(['a', 'd', 'h', 'v'], repeat=max_lev))
36
draw_2d_wp_basis(shape, wp_keys, ax=axes[2])
37
axes[2].set_title(f'wavelet packet\n(full: {max_lev} level)')
40
keys = ['aaaa', 'aaad', 'aaah', 'aaav', 'aad', 'aah', 'aava', 'aavd',
41
'aavh', 'aavv', 'ad', 'ah', 'ava', 'avd', 'avh', 'avv', 'd', 'h',
42
'vaa', 'vad', 'vah', 'vav', 'vd', 'vh', 'vv']
43
draw_2d_wp_basis(shape, keys, ax=axes[3], label_levels=label_levels)
44
axes[3].set_title('wavelet packet\n(custom)')