【问题标题】:matplotlib weirdness, it's not drawing my graphmatplotlib 怪异,它没有画出我的图表
【发布时间】:2011-03-30 10:26:34
【问题描述】:

发生的事情是我遵循了这个demo,我对其进行了修改以满足我的需要让它工作,将其更改为使用函数来绘制两个图形,但现在使用plt.show() 或@987654323 它根本不起作用@

这是我的代码

import csv
import numpy as np

import matplotlib
matplotlib.use('Agg')

import matplotlib.pyplot as plt
import matplotlib.mlab as mlab

# I converted excel to a csv file
data = [x for x in csv.reader(open('ASS1_Q1.csv'))]

question1 = {}
question1['males'] = []
question1['females'] = []
for x in data:
    if x[0].lower() == "male":
        question1["males"].append(float(x[1]))
    elif x[0].lower() == "female":
        question1['females'].append(float(x[1]))
    else:
        print "Not a valid dataline", x

def plot_graph(data, filename):

    fig = plt.figure()
    ax = fig.add_subplot(111)

    n, bins, patches = ax.hist(np.array(data), bins=13, align='mid', facecolor='#888888')

    ax.set_xlabel('Speed in kph')
    ax.set_ylabel('Amount of Females')

    ax.set_xlim(min(data, max(data)))

    # plt.savefig(filename)
    plt.show()           

plot_graph(question1['males'], "ASS1Q1-males.eps")
#plot_graph(question1['females'], "ASSQ2-females.eps")
print summary(question1['males'])
print summary(question1['females'])

有人可以解释为什么会这样吗?我做错了什么?

【问题讨论】:

    标签: python graph matplotlib


    【解决方案1】:

    尝试删除

    import matplotlib
    matplotlib.use('Agg')
    

    命令

    python -c 'import matplotlib; matplotlib.use("")'
    

    将显示可以发送到matplotlib.use 的有效字符串参数。 在我的机器上,“Agg”被列为有效,但设置后我没有得到任何输出。如果您好奇,您可以继续尝试各种选项,直到找到一个有效的选项。

    当你找到你喜欢的那个时,你可能还会发现设置类似的东西更方便

    backend      : GtkAgg
    

    在您的 ~/.matplotlib/matplotlibrc 中,而不是使用 matplotlib.use(...)

    【讨论】:

    • 哦,我发现了第 36 行的问题,我的括号全错了:/,不知道这是怎么回事,应该更好地解释我的自我,因为它正在为图表绘制一个空白区域
    • @Daniel,很高兴听到您发现了问题,尽管我的建议方向错误。 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-07
    • 2014-03-28
    • 2023-01-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多