2

I am using python 2.7 (miniconda) on OSX. Here is my code and the program never run to complete even after 30 minutes. Here is the output, any ideas what is wrong?

Source code,

#!/usr/bin/python
# -*- coding: utf-8 -*-

"""
=========================================================
Logistic Regression 3-class Classifier
=========================================================

Show below is a logistic-regression classifiers decision boundaries on the
`iris <http://en.wikipedia.org/wiki/Iris_flower_data_set>`_ dataset. The
datapoints are colored according to their labels.

"""
print(__doc__)


# Code source: Gaël Varoquaux
# Modified for documentation by Jaques Grobler
# License: BSD 3 clause

import numpy as np
import matplotlib.pyplot as plt
from sklearn import linear_model, datasets

# import some data to play with
iris = datasets.load_iris()
X = iris.data[:, :2]  # we only take the first two features.
Y = iris.target

h = .02  # step size in the mesh

logreg = linear_model.LogisticRegression(C=1e5)

# we create an instance of Neighbours Classifier and fit the data.
logreg.fit(X, Y)

# Plot the decision boundary. For that, we will assign a color to each
# point in the mesh [x_min, m_max]x[y_min, y_max].
x_min, x_max = X[:, 0].min() - .5, X[:, 0].max() + .5
y_min, y_max = X[:, 1].min() - .5, X[:, 1].max() + .5
xx, yy = np.meshgrid(np.arange(x_min, x_max, h), np.arange(y_min, y_max, h))
Z = logreg.predict(np.c_[xx.ravel(), yy.ravel()])

# Put the result into a color plot
Z = Z.reshape(xx.shape)
plt.figure(1, figsize=(4, 3))
plt.pcolormesh(xx, yy, Z, cmap=plt.cm.Paired)

# Plot also the training points
plt.scatter(X[:, 0], X[:, 1], c=Y, edgecolors='k', cmap=plt.cm.Paired)
plt.xlabel('Sepal length')
plt.ylabel('Sepal width')

plt.xlim(xx.min(), xx.max())
plt.ylim(yy.min(), yy.max())
plt.xticks(())
plt.yticks(())

plt.show()

Error output,

/Users/foo/miniconda2/lib/python2.7/site-packages/matplotlib/font_manager.py:273: UserWarning: Matplotlib is building the font cache using fc-list. This may take a moment.
  warnings.warn('Matplotlib is building the font cache using fc-list. This may take a moment.')

Edit 1, error message after deleting files under ~/.matplotlib/,

/Users/foo/miniconda2/lib/python2.7/site-packages/matplotlib/font_manager.py:273: UserWarning: Matplotlib is building the font cache using fc-list. This may take a moment.
  warnings.warn('Matplotlib is building the font cache using fc-list. This may take a moment.')
Traceback (most recent call last):
  File "/Users/foo/personal/law/justech/featureExtraction/testLogisticRegression.py", line 22, in <module>
    import matplotlib.pyplot as plt
  File "/Users/foo/miniconda2/lib/python2.7/site-packages/matplotlib/pyplot.py", line 29, in <module>
    import matplotlib.colorbar
  File "/Users/foo/miniconda2/lib/python2.7/site-packages/matplotlib/colorbar.py", line 34, in <module>
    import matplotlib.collections as collections
  File "/Users/foo/miniconda2/lib/python2.7/site-packages/matplotlib/collections.py", line 27, in <module>
    import matplotlib.backend_bases as backend_bases
  File "/Users/foo/miniconda2/lib/python2.7/site-packages/matplotlib/backend_bases.py", line 62, in <module>
    import matplotlib.textpath as textpath
  File "/Users/foo/miniconda2/lib/python2.7/site-packages/matplotlib/textpath.py", line 15, in <module>
    import matplotlib.font_manager as font_manager
  File "/Users/foo/miniconda2/lib/python2.7/site-packages/matplotlib/font_manager.py", line 1421, in <module>
    _rebuild()
  File "/Users/foo/miniconda2/lib/python2.7/site-packages/matplotlib/font_manager.py", line 1406, in _rebuild
    fontManager = FontManager()
  File "/Users/foo/miniconda2/lib/python2.7/site-packages/matplotlib/font_manager.py", line 1044, in __init__
    self.ttffiles = findSystemFonts(paths) + findSystemFonts()
  File "/Users/foo/miniconda2/lib/python2.7/site-packages/matplotlib/font_manager.py", line 324, in findSystemFonts
    for f in get_fontconfig_fonts(fontext):
  File "/Users/foo/miniconda2/lib/python2.7/site-packages/matplotlib/font_manager.py", line 276, in get_fontconfig_fonts
    stderr=subprocess.PIPE)
  File "/Users/foo/miniconda2/lib/python2.7/subprocess.py", line 710, in __init__
    errread, errwrite)
  File "/Users/foo/miniconda2/lib/python2.7/subprocess.py", line 1334, in _execute_child
    child_exception = pickle.loads(data)
  File "/Users/foo/miniconda2/lib/python2.7/pickle.py", line 1388, in loads
    return Unpickler(file).load()
  File "/Users/foo/miniconda2/lib/python2.7/pickle.py", line 864, in load
    dispatch[key](self)
  File "/Users/foo/miniconda2/lib/python2.7/pickle.py", line 886, in load_eof
    raise EOFError
EOFError
Lin Ma
  • 9,739
  • 32
  • 105
  • 175
  • 2
    Possible duplicate of [matplotlib taking time when being imported](http://stackoverflow.com/questions/34771191/matplotlib-taking-time-when-being-imported) – tmdavison Aug 22 '16 at 12:42
  • @tom, tried the solution and met with other errors. Please refer to Edit 1 section. I feel the issue I met with is different from what you referred from another post. – Lin Ma Aug 22 '16 at 19:00

1 Answers1

0

Most probably matplotlib 1.5.1 have installed in your machine and you may get warning:

/usr/lib/python2.7/dist-packages/matplotlib/font_manager.py:273: UserWarning: Matplotlib is building the font cache using fc-list. This may take a moment.
  warnings.warn('Matplotlib is building the font cache using fc-list. This may take a moment.')

To rid of from this warning please upgrade matplotlib by:

*sudo pip install --upgrade matplotlib*
MMReza
  • 115
  • 1
  • 9