【问题标题】:Matplotlib plot is a no-showMatplotlib 图没有出现
【发布时间】:2013-05-07 12:09:06
【问题描述】:

当我运行这段代码时

import pandas as pd
import numpy as np
def add_prop(group):
    births = group.births.astype(float)
    group['prop'] = births/births.sum()
    return group

pieces = []
columns = ['name', 'sex', 'births']

for year in range(1880, 2012):
    path = 'yob%d.txt' % year
    frame = pd.read_csv(path, names = columns)
    frame['year'] = year
    pieces.append(frame)
    names = pd.concat(pieces, ignore_index = True)

total_births = names.pivot_table('births', rows = 'year', cols = 'sex', aggfunc = sum)
total_births.plot(title = 'Total Births by sex and year')

我没有情节。这是来自 Wes McKinney 关于使用 Python 进行数据分析的书。 谁能指出我正确的方向?

【问题讨论】:

  • 如果你正在使用 ipython(你应该是!),你可以使用 pylab 标志:ipython --pylab

标签: python matplotlib pandas


【解决方案1】:

import matplotlib.pyplot as plt

在顶部,并且

plt.show()

在最后。

【讨论】:

  • 你知道为什么会这样吗?没有一台电脑也可以,但其他地方需要
  • @NoelEvans:在 IPython 笔记本等 GUI 中,您可能不需要调用 plt.show(),具体取决于 GUI 的配置方式。如果从命令行运行 Python 脚本,则必须调用 plt.show()
【解决方案2】:

在 IPython 笔记本中,您还可以使用笔记本顶部的 %matplotlib inline 在输出单元格中自动显示创建的图。

【讨论】:

    【解决方案3】:

    您的代码是正确的。 只是说:

    import matplotlib as plt
    

    为了显示你的情节:

    plt.show()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-10-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-30
      • 1970-01-01
      相关资源
      最近更新 更多