O nbconvert permite a conversão de notebooks em outros formatos, permitindo:
O nbconvert pode ser utilizado tanto como uma biblioteca Python, com: import nbconvert como na 
linha de comando: jupyter nbconvert
In [1]:
    
!ls
    
    
In [1]:
    
!jupyter nbconvert 2016-12-20-RMS-JupShow.ipynb
    
    
In [2]:
    
#!jupyter nbconvert 2016-12-20-RMS-JupShow.ipynb --to pdf
    
In [9]:
    
!jupyter nbconvert 2016-12-20-RMS-JupShow.ipynb --to python --output ../src/2016-12-20-RMS-JupShow.py
    
    
In [ ]:
    
# %load ../src/2016-12-20-RMS-JupShow.py
# JupShow
# =========
# 
# A class for managing plots and images on jupyter-notebook. 
# 
# 
# In[1]:
import matplotlib.pyplot as plt
import pylab
import numpy as np
from scipy.misc import imresize
class JupShow:
    #constructor
    def __init__(self, ncols = 3,figsize =  (12,8),imwidth = []):
        self.imgs = []
        self.titles = []
        self.ncols = ncols
        self.imwidth = []   
        self.figsize= figsize
        return
    #append images to list of images to be displayed
    def imshow_add(self,img,title = ""):
        self.imgs.append(img)
        self.titles.append(title)
        return 
    #sets figure size. Ex figsize = (12,8)
    def set_figsize(self,figsize):
        self.figsize = figsize
        return
    
    #sets image width
    def set_imwidth(self,imwidth):
        self.imwidth = imwidth
        return    
    #converts matplotlib image object to numpy array
    def fig2img(self,figure):
        # draw the renderer
        figure.canvas.draw ( )
        # Get the RGB buffer from the figure
        w,h = figure.canvas.get_width_height()
        buf = np.fromstring ( figure.canvas.tostring_rgb(), dtype=np.uint8 )
        buf.shape = ( h, w, 3 )
        return buf
    #displays image in subplot format 
    def imshow(self):
        number_of_subplots = len(self.imgs)
        nlines = number_of_subplots/self.ncols + 1
        plt.close("all")
        figure1 = plt.figure(figsize = (12,8))
        for i,v in enumerate(xrange(number_of_subplots)):
            v = v+1
            ax1 = pylab.subplot(nlines,self.ncols,v)
            img = self.imgs[i]
            #Test if its a numpy.array or matplotlib plot
            #  if it is a plot it converts to numpy.array
            try:
                img.shape
            except:
                img = self.fig2img(img)
            #Rescale images if necessary
            if self.imwidth:
                if (img.ndim==2): 
                    h,w = img.shape
                else:
                    h,w,_ = img.shape
                height = int(self.imwidth*1.0*h/w)    
                img = imresize(img,(height,self.imwidth))
            #display images: gray or color depending on the image dimension
            if img.ndim == 2:
                ax1.imshow(img, cmap='Greys_r')
            else:
                ax1.imshow(img)
            #removes axis and writes images titles
            ax1.set_xticks([]) 
            ax1.set_yticks([]) 
            ax1.set_xlabel(self.titles[i])
            ax1.set_frame_on(False)
        # empties buffer
        self.imgs = []
        self.titles = []
        plt.show(figure1)
        return
# In[2]:
from PIL import Image
import urllib2 as urllib
get_ipython().magic(u'matplotlib inline')
display = JupShow()
display.set_imwidth(512)
#Apple image
fd = urllib.urlopen("https://staticdelivery.nexusmods.com/mods/110/images/74627-0-1459502036.jpg")
img = np.asarray(Image.open(fd))
display.imshow_add(img,"(a) apple")
#Log plot
x = np.linspace(0.001,5,30)
y = np.log(x)
fig = plt.figure()
plt.plot(x,y)
plt.xlabel("x")
plt.ylabel("y")
plt.grid()
display.imshow_add(fig,"(b) log")
#Beach image
fd2 =  urllib.urlopen("http://www.planetware.com/photos-large/CAY/caribbean-best-beaches-seven-mile-beach.jpg")
img2 = np.asarray(Image.open(fd2))
display.imshow_add(img2,"(c) beach")
# Brain image
fd3 = urllib.urlopen("https://s-media-cache-ak0.pinimg.com/originals/48/af/10/48af108a43d588f2e87aad9e94e3cfa7.jpg")
img3 = np.asarray(Image.open(fd3))
display.imshow_add(img3,"(d) brain")
# Cosine plot
fig = plt.figure()
plt.plot(x,y)
plt.xlabel("x")
plt.ylabel("y")
plt.grid()
display.imshow_add(fig,"(e) cos")
#Displaying all images
display.imshow()
# In[3]:
#Bike image
fd4 =  urllib.urlopen("https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcTsxq743pzVv6AaHNL704JvspkZwQ_GCSQ85bcYslhNjhdmlk_7")
img4 = np.asarray(Image.open(fd4))
display.imshow_add(img4,"(a) bike")
# Soldiers image
fd5 = urllib.urlopen("https://cdn.theatlantic.com/assets/media/img/photo/2011/07/world-war-ii-conflict-spreads-around-the-globe/w01_07110168/main_900.jpg?1420520331")
img5 = np.asarray(Image.open(fd5))
display.imshow_add(img5,"(b) Soldiers")
#Displaying all images
display.imshow()
# In[ ]: