Getting insecure pickle string with ggplot
Question: I'm trying to use ggplot for Python working inside iPython Notebook, but when
running `from ggplot import *` the following error appears:

    
    
    ---------------------------------------------------------------------------
    ValueError                                Traceback (most recent call last)
    <ipython-input-22-2199c088d178> in <module>()
          2 import numpy as np
          3 import dateutil
    ----> 4 from ggplot import *
    
    ~/ipython-venv/lib/python2.7/site-packages/ggplot/__init__.py in <module>()
         19 __version__ = '0.6.8'
         20 
    ---> 21 from .qplot import qplot
         22 from .ggplot import ggplot
         23 from .components import aes
    
    ~/ipython-venv/lib/python2.7/site-packages/ggplot/qplot.py in <module>()
          3 
          4 import ggplot
    ----> 5 from .components import aes
          6 from .geoms import geom_point, geom_bar, geom_boxplot, geom_histogram, geom_line
          7 from .geoms.chart_components import xlab as xlabel
    
    ~/ipython-venv/lib/python2.7/site-packages/ggplot/components/__init__.py in <module>()
          2                         unicode_literals)
          3 from .aes import aes
    ----> 4 from . import colors, shapes, size, linetypes, alphas
          5 
          6 
    
    ~/ipython-venv/lib/python2.7/site-packages/ggplot/components/colors.py in <module>()
          4 import numpy as np
          5 from matplotlib.colors import rgb2hex
    ----> 6 from ..utils.color import ColorHCL
          7 from .legend import get_labels
          8 from copy import deepcopy
    
    ~/ipython-venv/lib/python2.7/site-packages/ggplot/utils/__init__.py in <module>()
          2                         unicode_literals)
          3 
    ----> 4 from .ggutils import ggsave, add_ggplotrc_params
          5 from .date_breaks import date_breaks
          6 from .date_format import date_format
    
    ~/ipython-venv/lib/python2.7/site-packages/ggplot/utils/ggutils.py in <module>()
          4                         unicode_literals)
          5 
    ----> 6 import matplotlib.pyplot as plt
          7 import json
          8 import os
    
    ~/ipython-venv/lib/python2.7/site-packages/matplotlib/pyplot.py in <module>()
         27 from cycler import cycler
         28 import matplotlib
    ---> 29 import matplotlib.colorbar
         30 from matplotlib import style
         31 from matplotlib import _pylab_helpers, interactive
    
    ~/ipython-venv/lib/python2.7/site-packages/matplotlib/colorbar.py in <module>()
         32 import matplotlib.artist as martist
         33 import matplotlib.cbook as cbook
    ---> 34 import matplotlib.collections as collections
         35 import matplotlib.colors as colors
         36 import matplotlib.contour as contour
    
    ~/ipython-venv/lib/python2.7/site-packages/matplotlib/collections.py in <module>()
         25 import matplotlib.artist as artist
         26 from matplotlib.artist import allow_rasterization
    ---> 27 import matplotlib.backend_bases as backend_bases
         28 import matplotlib.path as mpath
         29 from matplotlib import _path
    
    ~/ipython-venv/lib/python2.7/site-packages/matplotlib/backend_bases.py in <module>()
         60 
         61 import matplotlib.tight_bbox as tight_bbox
    ---> 62 import matplotlib.textpath as textpath
         63 from matplotlib.path import Path
         64 from matplotlib.cbook import mplDeprecation, warn_deprecated
    
    ~/ipython-venv/lib/python2.7/site-packages/matplotlib/textpath.py in <module>()
         13 from matplotlib.path import Path
         14 from matplotlib import rcParams
    ---> 15 import matplotlib.font_manager as font_manager
         16 from matplotlib.ft2font import FT2Font, KERNING_DEFAULT, LOAD_NO_HINTING
         17 from matplotlib.ft2font import LOAD_TARGET_LIGHT
    
    ~/ipython-venv/lib/python2.7/site-packages/matplotlib/font_manager.py in <module>()
       1419                 verbose.report("Using fontManager instance from %s" % _fmcache)
       1420         except:
    -> 1421             _rebuild()
       1422     else:
       1423         _rebuild()
    
    ~/ipython-venv/lib/python2.7/site-packages/matplotlib/font_manager.py in _rebuild()
       1404     def _rebuild():
       1405         global fontManager
    -> 1406         fontManager = FontManager()
       1407         if _fmcache:
       1408             pickle_dump(fontManager, _fmcache)
    
    ~/ipython-venv/lib/python2.7/site-packages/matplotlib/font_manager.py in __init__(self, size, weight)
       1042         #  Load TrueType fonts and create font dictionary.
       1043 
    -> 1044         self.ttffiles = findSystemFonts(paths) + findSystemFonts()
       1045         self.defaultFamily = {
       1046             'ttf': 'Bitstream Vera Sans',
    
    ~/ipython-venv/lib/python2.7/site-packages/matplotlib/font_manager.py in findSystemFonts(fontpaths, fontext)
        322                     fontfiles[f] = 1
        323 
    --> 324             for f in get_fontconfig_fonts(fontext):
        325                 fontfiles[f] = 1
        326 
    
    ~/ipython-venv/lib/python2.7/site-packages/matplotlib/font_manager.py in get_fontconfig_fonts(fontext)
        274         pipe = subprocess.Popen(['fc-list', '--format=%{file}\\n'],
        275                                 stdout=subprocess.PIPE,
    --> 276                                 stderr=subprocess.PIPE)
        277         output = pipe.communicate()[0]
        278     except (OSError, IOError):
    
    /usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.pyc in __init__(self, args, bufsize, executable, stdin, stdout, stderr, preexec_fn, close_fds, shell, cwd, env, universal_newlines, startupinfo, creationflags)
        708                                 p2cread, p2cwrite,
        709                                 c2pread, c2pwrite,
    --> 710                                 errread, errwrite)
        711         except Exception:
        712             # Preserve original exception in case os.close raises.
    
    /usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.pyc in _execute_child(self, args, executable, preexec_fn, close_fds, cwd, env, universal_newlines, startupinfo, creationflags, shell, to_close, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite)
       1332                     if e.errno != errno.ECHILD:
       1333                         raise
    -> 1334                 child_exception = pickle.loads(data)
       1335                 raise child_exception
       1336 
    
    /usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/lib/python2.7/pickle.pyc in loads(str)
       1386 def loads(str):
       1387     file = StringIO(str)
    -> 1388     return Unpickler(file).load()
       1389 
       1390 # Doctest
    
    /usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/lib/python2.7/pickle.pyc in load(self)
        862             while 1:
        863                 key = read(1)
    --> 864                 dispatch[key](self)
        865         except _Stop, stopinst:
        866             return stopinst.value
    
    /usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/lib/python2.7/pickle.pyc in load_string(self)
        970             if rep.startswith(q):
        971                 if len(rep) < 2 or not rep.endswith(q):
    --> 972                     raise ValueError, "insecure string pickle"
        973                 rep = rep[len(q):-len(q)]
        974                 break
    
    ValueError: insecure string pickle
    

The environment running is on OS-X El Capitan, Python 2.x is installed through
HomeBrew, and the following libraries are installed:

> (ipython-venv)➜ ~ pip list appnope (0.1.0) backports-abc (0.4)
> backports.ssl-match-hostname (3.5.0.1) beautifulsoup4 (4.4.1) brewer2mpl
> (1.4.1) certifi (2015.11.20.1) cycler (0.9.0) decorator (4.0.6) functools32
> (3.2.3.post2) ggplot (0.6.8) gnureadline (6.3.3) ipykernel (4.2.2) ipython
> (4.0.3) ipython-genutils (0.1.0) Jinja2 (2.8) jsonschema (2.5.1) jupyter-
> client (4.1.1) jupyter-core (4.0.6) MarkupSafe (0.23) matplotlib (1.5.1)
> mechanize (0.2.5) mistune (0.7.1) nbconvert (4.1.0) nbformat (4.0.1)
> notebook (4.1.0) numpy (1.10.4) pandas (0.17.1) path.py (8.1.2) patsy
> (0.4.1) pexpect (4.0.1) pickleshare (0.6) pip (8.0.2) ptyprocess (0.5)
> Pygments (2.1) pyparsing (2.1.0) python-dateutil (2.4.2) pytz (2015.7) pyzmq
> (15.2.0) scipy (0.17.0) selenium (2.50.0) setuptools (15.0) simplegeneric
> (0.8.1) singledispatch (3.4.0.3) six (1.10.0) statsmodels (0.6.1) termcolor
> (1.1.0) terminado (0.6) tornado (4.3) traitlets (4.1.0)


Answer: This has been discussed here:
[github.com/matplotlib/matplotlib/pull/5640](http://github.com/matplotlib/matplotlib/pull/5640).

It may be a permissions issue - `matplotlib` shouldn't be building that cache
every time

The suggestion there is to delete the contents of `~/.cache/matplotlib` and
try again.

