From a6918a49a5bf81eb7be9be5ca674204c657f85b8 Mon Sep 17 00:00:00 2001
From: Fabian Pedregosa <fabian.pedregosa@inria.fr>
Date: Tue, 30 Aug 2011 12:25:20 +0200
Subject: [PATCH] Generate thumbnails in the example gallery

---
 doc/logos/scikit-learn-logo-thumb.png         | Bin 0 -> 9135 bytes
 doc/sphinxext/gen_rst.py                      |  61 +++++++++++++++---
 .../covariance/plot_covariance_estimation.py  |   1 -
 examples/manifold/plot_lle_digits.py.prof     | Bin 0 -> 91205 bytes
 examples/plot_precision_recall.py             |   1 -
 examples/plot_roc.py                          |   1 -
 examples/plot_train_error_vs_test_error.py    |   6 +-
 7 files changed, 56 insertions(+), 14 deletions(-)
 create mode 100644 doc/logos/scikit-learn-logo-thumb.png
 create mode 100644 examples/manifold/plot_lle_digits.py.prof

diff --git a/doc/logos/scikit-learn-logo-thumb.png b/doc/logos/scikit-learn-logo-thumb.png
new file mode 100644
index 0000000000000000000000000000000000000000..e67908194c8f0b012856d2b7bcd08b6a7ba1d72e
GIT binary patch
literal 9135
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
My85}Sb4q9e06z#jLjV8(

literal 0
HcmV?d00001

diff --git a/doc/sphinxext/gen_rst.py b/doc/sphinxext/gen_rst.py
index c61e336327..0cf3840302 100644
--- a/doc/sphinxext/gen_rst.py
+++ b/doc/sphinxext/gen_rst.py
@@ -110,6 +110,29 @@ def generate_example_rst(app):
     fhindex = file(os.path.join(root_dir, 'index.rst'), 'w')
     fhindex.write("""\
 
+.. raw:: html
+
+    <style type="text/css">
+    .figure {
+        float: left;
+        margin: 10px;
+        height: auto;
+        width: auto;
+        height: 200px;
+        width: 180px;
+    }
+
+    .figure img {
+        display: inline;
+        margin: 3px;
+        }
+
+    .figure .caption {
+        width: 170px;
+        text-align: center !important;
+    }
+    </style>
+
 Examples
 ========
 
@@ -119,8 +142,6 @@ Examples
     # better than nested.
     generate_dir_rst('.', fhindex, example_dir, root_dir, plot_gallery)
     for dir in sorted(os.listdir(example_dir)):
-        if dir == '.svn':
-            continue
         if os.path.isdir(os.path.join(example_dir, dir)):
             generate_dir_rst(dir, fhindex, example_dir, root_dir, plot_gallery)
     fhindex.flush()
@@ -144,9 +165,9 @@ def generate_dir_rst(dir, fhindex, example_dir, root_dir, plot_gallery):
         return
     fhindex.write("""
 
+
 %s
 
-.. toctree::
 
 """ % file(os.path.join(src_dir, 'README.txt')).read())
     if not os.path.exists(target_dir):
@@ -154,7 +175,17 @@ def generate_dir_rst(dir, fhindex, example_dir, root_dir, plot_gallery):
     for fname in sorted(os.listdir(src_dir)):
         if fname.endswith('py'):
             generate_file_rst(fname, target_dir, src_dir, plot_gallery)
-            fhindex.write('    %s\n' % (os.path.join(dir, fname[:-3])))
+            thumb = os.path.join(dir, 'images', 'thumb', fname[:-3] + '.png')
+            fhindex.write('.. figure:: %s\n\n' % thumb)
+            link_name = os.path.join(dir, fname).replace(os.path.sep, '_')
+            if link_name.startswith('._'):
+                link_name = link_name[2:]
+            fhindex.write('   :ref:`example_%s`\n\n' % link_name)
+    fhindex.write("""
+.. raw:: html
+
+    <div style="clear: both"></div>
+    """)
 
 
 def generate_file_rst(fname, target_dir, src_dir, plot_gallery):
@@ -178,15 +209,18 @@ def generate_file_rst(fname, target_dir, src_dir, plot_gallery):
     # The following is a list containing all the figure names
     figure_list = []
 
+    image_dir = os.path.join(target_dir, 'images')
+    thumb_dir = os.path.join(image_dir, 'thumb')
+    if not os.path.exists(image_dir):
+        os.makedirs(image_dir)
+    if not os.path.exists(thumb_dir):
+        os.makedirs(thumb_dir)
+    image_path = os.path.join(image_dir, image_fname)
+    thumb_file = os.path.join(thumb_dir, fname[:-3] + '.png')
     if plot_gallery and fname.startswith('plot'):
         # generate the plot as png image if file name
         # starts with plot and if it is more recent than an
         # existing image.
-        image_dir = os.path.join(target_dir, 'images')
-        if not os.path.exists(image_dir):
-            os.makedirs(image_dir)
-
-        image_path = os.path.join(image_dir, image_fname)
         first_image_file = image_path % 1
 
         if (not os.path.exists(first_image_file) or
@@ -228,7 +262,16 @@ def generate_file_rst(fname, target_dir, src_dir, plot_gallery):
             figure_list = [f[len(image_dir):]
                             for f in glob.glob(image_path % '[1-9]')]
                             #for f in glob.glob(image_path % '*')]
+
+        # generate thumb file
         this_template = plot_rst_template
+        from matplotlib import image
+        if os.path.exists(first_image_file):
+            image.thumbnail(first_image_file, thumb_file, 0.2)
+ 
+    if not os.path.exists(thumb_file):
+        # create something not to replace the thumbnail
+        shutil.copy('logos/scikit-learn-logo-thumb.png', thumb_file)
 
     docstring, short_desc, end_row = extract_docstring(example_file)
 
diff --git a/examples/covariance/plot_covariance_estimation.py b/examples/covariance/plot_covariance_estimation.py
index c01747f6eb..178caceecf 100644
--- a/examples/covariance/plot_covariance_estimation.py
+++ b/examples/covariance/plot_covariance_estimation.py
@@ -68,7 +68,6 @@ loglik_real = -log_likelihood(emp_cov, linalg.inv(real_cov))
 
 ###############################################################################
 # Plot results
-pl.figure(-1)
 pl.title("Regularized covariance: likelihood and shrinkage coefficient")
 pl.xlabel('Shrinkage')
 pl.ylabel('Negative log-likelihood')
diff --git a/examples/manifold/plot_lle_digits.py.prof b/examples/manifold/plot_lle_digits.py.prof
new file mode 100644
index 0000000000000000000000000000000000000000..2d30366716f99aa15baa8284df16ef3f2900d2b0
GIT binary patch
literal 91205
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
QAlpokX0Vwc!>M2<0DM<q)Bpeg

literal 0
HcmV?d00001

diff --git a/examples/plot_precision_recall.py b/examples/plot_precision_recall.py
index f62b21d039..8d4f1a9a0e 100644
--- a/examples/plot_precision_recall.py
+++ b/examples/plot_precision_recall.py
@@ -40,7 +40,6 @@ precision, recall, thresholds = precision_recall_curve(y[half:], probas_[:,1])
 area = auc(recall, precision)
 print "Area Under Curve: %0.2f" % area
 
-pl.figure(-1)
 pl.clf()
 pl.plot(recall, precision, label='Precision-Recall curve')
 pl.xlabel('Recall')
diff --git a/examples/plot_roc.py b/examples/plot_roc.py
index e9863d0005..b7c529c041 100644
--- a/examples/plot_roc.py
+++ b/examples/plot_roc.py
@@ -44,7 +44,6 @@ roc_auc = auc(fpr, tpr)
 print "Area under the ROC curve : %f" % roc_auc
 
 # Plot ROC curve
-pl.figure(-1)
 pl.clf()
 pl.plot(fpr, tpr, label='ROC curve (area = %0.2f)' % roc_auc)
 pl.plot([0, 1], [0, 1], 'k--')
diff --git a/examples/plot_train_error_vs_test_error.py b/examples/plot_train_error_vs_test_error.py
index 26a367fa3d..12da0c8edc 100644
--- a/examples/plot_train_error_vs_test_error.py
+++ b/examples/plot_train_error_vs_test_error.py
@@ -39,7 +39,8 @@ enet = linear_model.ElasticNet(rho=0.7)
 train_errors = list()
 test_errors = list()
 for alpha in alphas:
-    enet.fit(X_train, y_train, alpha=alpha)
+    enet.set_params(alpha=alpha)
+    enet.fit(X_train, y_train)
     train_errors.append(enet.score(X_train, y_train))
     test_errors.append(enet.score(X_test, y_test))
 
@@ -48,7 +49,8 @@ alpha_optim = alphas[i_alpha_optim]
 print "Optimal regularization parameter : %s" % alpha_optim
 
 # Estimate the coef_ on full data with optimal regularization parameter
-coef_ = enet.fit(X, y, alpha=alpha_optim).coef_
+enet.set_params(alpha=alpha_optim)
+coef_ = enet.fit(X, y).coef_
 
 ###############################################################################
 # Plot results functions
-- 
GitLab