Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 22f9d2e

Browse files
committed
Added 'interpolation_none_vs_nearest' example, without .DS_store files
1 parent 03e60dc commit 22f9d2e

File tree

2 files changed

+47
-0
lines changed

2 files changed

+47
-0
lines changed
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
"""
2+
Displays the difference between interpolation = 'none' and
3+
interpolation = 'nearest'.
4+
5+
Interpolation = 'none' and 'nearest' are equivalent when converting a
6+
figure to an image file, such as a PNG. Interpolation = 'none'
7+
and interpolation = 'nearest' behave quite differently, however, when
8+
converting a figure to a vector graphics file, such as a PDF. As shown,
9+
Interpolation = 'none' works well when a big image is scaled down, while
10+
interpolation = 'nearest' works well when a small image is blown up.
11+
"""
12+
13+
import numpy as np
14+
import matplotlib.pyplot as plt
15+
import matplotlib.cbook as cbook
16+
17+
#Load big image
18+
big_im_path = cbook.get_sample_data('necked_tensile_specimen.png')
19+
big_im = plt.imread(big_im_path)
20+
#Define small image
21+
small_im = np.array([[0.25, 0.75, 1.0, 0.75], [0.1, 0.65, 0.5, 0.4], \
22+
[0.6, 0.3, 0.0, 0.2], [0.7, 0.9, 0.4, 0.6]])
23+
24+
#Create a 2x2 table of plots
25+
fig = plt.figure(figsize = [8.0, 7.5])
26+
ax = plt.subplot(2,2,1)
27+
ax.imshow(big_im, interpolation = 'none')
28+
ax = plt.subplot(2,2,2)
29+
ax.imshow(big_im, interpolation = 'nearest')
30+
ax = plt.subplot(2,2,3)
31+
ax.imshow(small_im, interpolation = 'none')
32+
ax = plt.subplot(2,2,4)
33+
ax.imshow(small_im, interpolation = 'nearest')
34+
plt.subplots_adjust(left = 0.24, wspace = 0.2, hspace = 0.1, \
35+
bottom = 0.05, top = 0.86)
36+
37+
#Label the rows and columns of the table
38+
fig.text(0.03, 0.645, 'Big Image\nScaled Down', ha = 'left')
39+
fig.text(0.03, 0.225, 'Small Image\nBlown Up', ha = 'left')
40+
fig.text(0.383, 0.90, "Interpolation = 'none'", ha = 'center')
41+
fig.text(0.75, 0.90, "Interpolation = 'nearest'", ha = 'center')
42+
43+
#Save as a png and as a pdf
44+
txt = fig.text(0.452, 0.95, 'Saved as a PNG', fontsize = 18)
45+
plt.savefig('Nearest_vs_none.png', bbox_inches = 'tight')
46+
txt.set_text('Saved as a PDF')
47+
plt.savefig('Nearest_vs_none.pdf', bbox_inches = 'tight')

0 commit comments

Comments
 (0)