Jupyter Notebook - 在函数内绘图 - 未绘制图 [重复]

Posted

技术标签:

【中文标题】Jupyter Notebook - 在函数内绘图 - 未绘制图 [重复]【英文标题】:Jupyter Notebook - Plot inside a function - Figure is not plotted [duplicate] 【发布时间】:2019-03-22 13:36:41 【问题描述】:

我想从一个类中调用一个函数,我想在其中绘制多个图形。 没有抛出错误,但我没有收到情节,但只有:

#############################################
Histograms of the continuous data:
#############################################
<Figure size 640x480 with 1 Axes>
<Figure size 640x480 with 1 Axes>
<Figure size 640x480 with 1 Axes>
<Figure size 640x480 with 1 Axes>
<Figure size 640x480 with 1 Axes>
<Figure size 640x480 with 1 Axes>
<Figure size 640x480 with 1 Axes>
<Figure size 640x480 with 1 Axes>
<Figure size 640x480 with 1 Axes>
<Figure size 640x480 with 1 Axes>
<Figure size 640x480 with 1 Axes>
<Figure size 640x480 with 1 Axes>

我使用的代码是:

class Pipeline:
    import matplotlib.pyplot as plt
    global plt
    from matplotlib import style
    style.use('ggplot')  


    def __init__(self,goal):
        self.goal = goal


    def examine(self,dataset):
        # Check for categorical and continous data
        continuous = []
        categorical = []
        for n,i in enumerate(dataset.columns):
            if isinstance(dataset[i][1],str):
                categorical.append(dataset.columns[n])
            else:
                continuous.append(dataset.columns[n])

        continuous_data = dataset[continuous]
        categorical_data = dataset[categorical]

        #Plot the histograms of the continuous data
        print('#############################################')
        print('Histograms of the continuous data:')
        print('#############################################')

        for col in continuous_data.columns:
            fig = plt.figure()
            ax = continuous_data[col].hist()
            ax.set_title(col)
            plt.show()







pipe = Pipeline('C')
pipe.examine(data)

我想知道,因为如果我第二次运行相同的代码,它会按照建议的方式绘制数字。 感谢任何帮助!

【问题讨论】:

这是在 Jupyter 中,因为它看起来像 %matplotlib inline 丢失了吗? 是的,它在 Jupyter 中 ok 在顶部添加“%matplotlib inline”并再次运行 这就是解决方案。请将其发布为答案 好的。 @2Obe。作为解决方案添加 【参考方案1】:

看起来您正在使用 Jupyter。要在 Jupyter 中显示绘图,您可以添加任一

%matplotlib inline

%matplotlib notebook

(对于稍微花哨的绘图选项)

【讨论】:

对于未来的读者:在 Jupyterlab 0.35.4 和 sympy.plotting.plot 中,%matplotlib inline 有效,但第二个花哨的没有给我:javascript Error: IPython is not defined 请注意交互式绘图,例如使用 %matplotlib inline 不容易实现 animate()。因此 %matplotlib notebook 可能是首选 @RobertLugg 第二个刚刚为我工作。 第一个对我有用的。

以上是关于Jupyter Notebook - 在函数内绘图 - 未绘制图 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何在 python jupyter notebook 中绘图?

Pycharm、Spyder、Jupyter notebook“弹出窗绘图”和“控制台绘图”设置

保存图形时Jupyter-notebook不透明的绘图环境

尝试使用 matplotlib 内联绘图时,为啥在 jupyter notebook 中出现 NonGuiException?

机械学习:Jupyter Notebook中Matplotlib的使用

如何在 Jupyter Notebook 中的绘图旁边显示数据框