19116


pylabでの描写の為に、以下の通り実行すると、モジュールはfigureを使えないと出て参りました。  
pylabは、`$pip install --upgrade pylab`にて最新のものを使っています。  
`pylab.figure()`だけではなく、`pylab.plot()`、`pylab.show()`等々でも同様のエラーを吐きます。解決策教えていただけましたら助かります。

[code]

     Python 2.7.10 (v2.7.10:15c95b7d81dc, May 23 2015, 09:33:12) 
        [GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
        Type "help", "copyright", "credits" or "license" for more information.
        >>> import pylab as pl
        >>> pl.figure()
        Traceback (most recent call last):
          File "<stdin>", line 1, in <module>
        AttributeError: 'module' object has no attribute 'figure'
    
[/code]

pylabは、以下に格納されております。

[code]

    /usr/local/lib/python2.7/site-packages
    
[/code]

使用されているpylabは以下の通り。

[code]

    >>> import pylab
    >>> print(pylab.__file__)
    /usr/local/lib/python2.7/site-packages/pylab/__init__.pyc
    
[/code]

また、pythonはbrewでインストールしたものを使用しています。

[code]

    $ which python
    /usr/local/bin/python
    
[/code]


CC BY-SA 3.0
2015-11-21T03:49:27.573
19113
2016-12-03T12:09:58.543
2015-11-21T04:42:54.850
9192
9192
question
python
Pylabのfigure()が使えなくなりました


過去に **`pylab`** と名乗っていたパッケージは
[**`scibag`**](https://github.com/javipalanca/scibag)
と[改名されました](https://github.com/javipalanca/scibag/issues/1)。  
また同名のパッケージが出現しない限り、新たにこの問題が発生する事はありません。  
(2016/12/03)

* * *

### "pylab"というパッケージが提供する"pylabモジュール"はmatplotlibの"pylabモジュール"とは別の物でした

"pylab"というパッケージは[いろいろなパッケージ](https://github.com/javipalanca/pylab/blob/master/requirements.txt)をインストールするためにある空のパッケージのようです。  
質問のように、これを使いインストールすると、ややこしい状況になります。  
`pylab`というモジュール名がこの空のモジュールに取られてしまいます。

これは`sudo pip2 uninstall pylab`などとして **削除した方がよい** でしょう。  
(何なんでしょうか。 **罠としか思えない** )

matplotlibのインストールは`sudo pip2 install
matplotlib`で出来ますし、これでmatplotlibが提供するpylabも使えるようになります。

[matplotlibのドキュメント](http://matplotlib.org/faq/usage_faq.html#matplotlib-
pyplot-and-pylab-how-are-they-
related)にpylabは非推奨なので、matplotlib.pyplotを使うように、とありますが、これはこの問題とは関係なかったですね。

> many examples use pylab, it is no longer recommended.

### importされているpylabがどこのpylabか確認する方法

[code]

    import pylab
    print(pylab.__file__)
    
[/code]

うっかり作業ディレクトリにpylab.pyというファイルを作ってしまっていた、というようなケースもあります。


CC BY-SA 3.0
2015-11-21T04:05:09.150
19116
2016-12-03T12:09:58.543
2016-12-03T12:09:58.543
3054
3054
19113
answer