<- [back] to the matplotlib-gallery repository
%load_ext watermark
%watermark -u -d -v -p matplotlib,numpy
Last updated: 21/08/2014 CPython 3.4.1 IPython 2.0.0 matplotlib 1.3.1 numpy 1.8.2
More information about the watermark
magic command extension.
%matplotlib inline
import numpy as np
# Sample from a bivariate Gaussian distribution
mean = [0,0]
cov = [[0,1],[1,0]]
x, y = np.random.multivariate_normal(mean, cov, 10000).T
from matplotlib import pyplot as plt
hist, xedges, yedges = np.histogram2d(x,y)
X,Y = np.meshgrid(xedges,yedges)
plt.imshow(hist)
plt.grid(True)
plt.colorbar()
plt.show()
# changing the interpolation
plt.imshow(hist, interpolation='nearest')
plt.grid(True)
plt.colorbar()
plt.show()
plt.hist2d(x, y, bins=10)
plt.colorbar()
plt.grid()
plt.show()
# changing the bin-size
plt.hist2d(x, y, bins=40)
plt.colorbar()
plt.grid()
plt.show()
plt.pcolor(hist)
plt.colorbar()
plt.grid()
plt.show()
import numpy as np
import matplotlib.pyplot as plt
columns = ['A', 'B', 'C', 'D']
rows = ['1', '2', '3', '4']
data = np.random.random((4,4))
fig = plt.figure()
ax = fig.add_subplot(111)
cax = ax.matshow(data, interpolation='nearest')
fig.colorbar(cax)
ax.set_xticklabels([''] + columns)
ax.set_yticklabels([''] + rows)
plt.show()
More color maps are available at http://wiki.scipy.org/Cookbook/Matplotlib/Show_colormaps
from math import ceil
import numpy as np
# Sample from a bivariate Gaussian distribution
mean = [0,0]
cov = [[0,1],[1,0]]
x, y = np.random.multivariate_normal(mean, cov, 10000).T
size = len(plt.cm.datad.keys())
all_maps = list(plt.cm.datad.keys())
fig, ax = plt.subplots(ceil(size/4), 4, figsize=(12,100))
counter = 0
for row in ax:
for col in row:
try:
col.imshow(hist, cmap=all_maps[counter])
col.set_title(all_maps[counter])
except IndexError:
break
counter += 1
plt.tight_layout()
plt.show()
New colormaps designed by Stéfan van der Walt and Nathaniel Smith were included in matplotlib 1.5, and the viridis colormap will be the new default colormap in matplotlib 2.0.
from math import ceil
import numpy as np
from matplotlib import pyplot as plt
# Sample from a bivariate Gaussian distribution
mean = [0,0]
cov = [[0,1],[1,0]]
x, y = np.random.multivariate_normal(mean, cov, 10000).T
size = len(plt.cm.datad.keys())
all_maps = list(plt.cm.datad.keys())
new_maps = ['viridis', 'inferno', 'magma', 'plasma']
counter = 0
for i in xrange(4):
plt.subplot(1, 4, counter + 1)
plt.imshow(hist, cmap=new_maps[counter])
plt.title(new_maps[counter])
counter += 1
plt.tight_layout()
plt.show()
To use 'viridis' in matplotlib 1.4, it's possible to include the colormap from the cmaps
package.
import colormaps as cmaps
plt.register_cmap(name='viridis', cmap=cmaps.viridis)
plt.set_cmap(cmaps.viridis)
img=mpimg.imread('stinkbug.png')
lum_img = np.flipud(img[:,:,0])
imgplot = plt.pcolormesh(lum_img)
import matplotlib.pyplot as plt
from matplotlib.colors import LogNorm
import numpy as np
np.random.seed(1)
a = np.random.random((25, 25))
plt.subplot(1, 1, 1)
plt.pcolor(a, norm=LogNorm(vmin=a.min() / 1.2, vmax=a.max() * 1.2), cmap='PuBu_r')
plt.colorbar()
plt.show()