【问题标题】:Trying to create a pie and bar chart from the data below尝试从以下数据创建饼图和条形图
【发布时间】:2017-04-13 22:18:45
【问题描述】:

我们正在尝试根据以下代码创建饼图和条形图。任何人都可以帮忙吗?我们做错了什么?

我们将不胜感激提供的任何帮助。谢谢。

browser = ({'IE': [0.21], 'Chrome': [0.51], 'Firefox': [0.18], 'Safari': [0.06], 'Others': [0.04]})
x = pd.Series(browser)
y = pd.Series.sort_values(x)
z = pd.DataFrame(y)
fig, axes = plt.subplots(nrows=1, ncols=2)
z.plot(kind = 'pie', ax = axes[0,0])
z.plot(kind = 'bar', ax - axes[0,1])

【问题讨论】:

    标签: python-2.7 pandas matplotlib seaborn


    【解决方案1】:

    您的代码中有几个错误。有关如何绘制饼图,请参阅下面的注释代码。

    import pandas as pd
    import matplotlib.pyplot as plt
    
    # dont put the dictionary into a tuple
    browser = {'IE': [0.21], 'Chrome': [0.51], 'Firefox': [0.18], 'Safari': [0.06], 'Others': [0.04]}
    # dont use values inside a list as column values for a dataframe
    browser2 = {}
    [browser2.update({key : val[0]}) for key, val in browser.iteritems()]
    
    x = pd.Series(browser2)
    y = pd.Series.sort_values(x)
    z = pd.DataFrame(y)
    print z
    fig, axes = plt.subplots(nrows=1, ncols=2, figsize=(8,4))
    # you need to specify which column of the dataframe you want to plot (here 0)
    z.plot(y=0, kind = 'pie', ax = axes[0])
    z.plot(kind = 'bar', ax = axes[1])
    axes[0].set_aspect("equal") # make aspect equal (such that circle is not eliptic)
    #place the legend at a decent position
    axes[0].legend(loc=1, bbox_to_anchor= (1,0.2), fontsize=11)
    plt.tight_layout()
    plt.show()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-02
      • 1970-01-01
      • 1970-01-01
      • 2012-01-08
      相关资源
      最近更新 更多