2017-02-07 20 views
0

内部工作具有IPython的笔记本电脑显示故障地块%matplotlib内联不会为图模块

这里是我做的一个简化版本:

%matplotlib inline 
import MyPackage 
obj = MyPackage.MyObj() 
obj.display() 

内MyPackage的:

import matplotlib.pyplot as plt 
class MyObj(object): 
    ...... 
    def display(self): 
     plt.figure() 
     plt.scatter(DATA_IN_MyObj) 

回我:

<matplotlib.figure.Figure at 0x5de5b10> 

非常感谢大家!

回答

0

由于plot命令位于您的模块中,该模块具有其自己的命名空间,因此您必须附加plt.show()才能显示该数字。

def display(self): 
    plt.scatter(DATA_IN_MyObj) 
    plt.show() 

plt.figure()没有必要。

%matplotlib inline是IPython的魔法,它导入许多绘图函数,并在单元格中检测到其中一个函数时自动发出plt.show()

+0

我真的这样做,但无济于事,但plt.plot(DATA_IN_MyObj)的作品。 – user7531420