Repository: mne-tools/mne-python

Issue:
The plot_arrowmap does not display arrows
#### Describe the bug
I am using MNE 0.20.6-Python 3.7.6 on a Windows OS. The example code plot_evoked_arrowmap.py on  https://mne.tools/stable/auto_examples/visualization/plot_evoked_arrowmap.html does not display arrows. There is a UserWarning caused by plot_arrowmap(): Tight layout not applied. The left and right margins cannot be made large enough to accommodate all axes decorations.


#### Steps to reproduce
```python
import numpy as np
from mne.datasets import sample
from mne import read_evokeds
from mne.viz import plot_arrowmap
path = sample.data_path()
fname = path + '/MEG/sample/sample_audvis-ave.fif'
condition = 'Left Auditory'
evoked = read_evokeds(fname, condition=condition, baseline=(None, 0))
evoked_mag = evoked.copy().pick_types(meg='mag')
max_time_idx = np.abs(evoked_mag.data).mean(axis=0).argmax()
plot_arrowmap(evoked_mag.data[:, max_time_idx], evoked_mag.info)
```

#### Expected results
The first picture in the tutorial https://mne.tools/stable/auto_examples/visualization/plot_evoked_arrowmap.html. It is an arrowmap. 
![image](https://user-images.githubusercontent.com/67695221/87945352-839a7900-ca98-11ea-8ef6-4024c193152c.png)



#### Actual results
The topomap is shown but the expected arrows are missing. And there is a UserWarning: Tight layout not applied. The left and right margins cannot be made large enough to accommodate all axes decorations.
![image](https://user-images.githubusercontent.com/67695221/87945108-30c0c180-ca98-11ea-873a-0345bf691bf8.png)

#### Additional information
```
Platform:      Windows-8.1-6.3.9600-SP0
Python:        3.7.6 (default, Jan  8 2020, 20:23:39) [MSC v.1916 64 bit (AMD64)]
Executable:    C:\Users\xm\anaconda3\python.exe
CPU:           Intel64 Family 6 Model 61 Stepping 4, GenuineIntel: 4 cores
Memory:        3.7 GB

mne:           0.20.6
numpy:         1.18.5 {blas=mkl_rt, lapack=mkl_rt}
scipy:         1.4.1
matplotlib:    3.1.3 {backend=module://ipykernel.pylab.backend_inline}

sklearn:       0.22.1
numba:         0.48.0
nibabel:       3.1.0
cupy:          Not found
pandas:        1.0.1
dipy:          1.1.1
mayavi:        4.7.2.dev0 {qt_api=pyqt5, PyQt5=5.9.2}
pyvista:       0.24.0
vtk:           9.0.0
```



Discussion:
I can confirm on Linux.  A quick work-around is to include `import matplotlib.pyplot as plt` and `plt.ion()` in your script.  If you do that, you will still get the `tight_layout`-related warning, but the arrows will get drawn.

Resolving patch:
diff --git a/examples/visualization/plot_evoked_arrowmap.py b/examples/visualization/plot_evoked_arrowmap.py
--- a/examples/visualization/plot_evoked_arrowmap.py
+++ b/examples/visualization/plot_evoked_arrowmap.py
@@ -8,14 +8,11 @@
 represents an estimation of the current flow underneath the MEG sensors.
 They are a poor man's MNE.
 
-See [1]_ for details.
+See :footcite:`CohenHosaka1976` for details.
 
 References
 ----------
-.. [1] D. Cohen, H. Hosaka
-   "Part II magnetic field produced by a current dipole",
-   Journal of electrocardiology, Volume 9, Number 4, pp. 409-417, 1976.
-   DOI: 10.1016/S0022-0736(76)80041-6
+.. footbibliography::
 """
 
 # Authors: Sheraz Khan <sheraz@khansheraz.com>
@@ -67,8 +64,8 @@
 # Plot gradiometer data as an arrowmap along with the topoplot at the time
 # of the maximum sensor space activity:
 path = bst_raw.data_path()
-raw_fname = path + '/MEG/bst_raw/' \
-                   'subj001_somatosensory_20111109_01_AUX-f.ds'
+raw_fname = path + ('/MEG/bst_raw/'
+                    'subj001_somatosensory_20111109_01_AUX-f.ds')
 raw_ctf = mne.io.read_raw_ctf(raw_fname)
 raw_ctf_info = mne.pick_info(
     raw_ctf.info, mne.pick_types(raw_ctf.info, meg=True, ref_meg=False))
diff --git a/mne/viz/topomap.py b/mne/viz/topomap.py
--- a/mne/viz/topomap.py
+++ b/mne/viz/topomap.py
@@ -2619,7 +2619,7 @@ def plot_arrowmap(data, info_from, info_to=None, scale=3e-10, vmin=None,
     plot_topomap(data, pos, axes=axes, vmin=vmin, vmax=vmax, cmap=cmap,
                  sensors=sensors, res=res, names=names, show_names=show_names,
                  mask=mask, mask_params=mask_params, outlines=outlines,
-                 contours=contours, image_interp=image_interp, show=show,
+                 contours=contours, image_interp=image_interp, show=False,
                  onselect=onselect, extrapolate=extrapolate, sphere=sphere,
                  ch_type=ch_type)
     x, y = tuple(pos.T)
@@ -2629,5 +2629,6 @@ def plot_arrowmap(data, info_from, info_to=None, scale=3e-10, vmin=None,
     axes.quiver(x, y, dxx, dyy, scale=scale, color='k', lw=1, clip_on=False)
     axes.figure.canvas.draw_idle()
     tight_layout(fig=fig)
+    plt_show(show)
 
     return fig


Test patch: