0
我有一堆x和y值,並希望分散繪製它們。matplotlib中的散點圖返回錯誤
plt.scatter(x,y)
savefig('foo.png')
這將返回以下錯誤:沒有顯示名稱並且沒有$ DISPLAY環境變量
我有一種感覺,這跟,我通過我的大學遠程運行蟒蛇的事實做,所以圖像不能只是「出現」。如果我可以將圖像保存到一個文件,那爲我工作。
我有一堆x和y值,並希望分散繪製它們。matplotlib中的散點圖返回錯誤
plt.scatter(x,y)
savefig('foo.png')
這將返回以下錯誤:沒有顯示名稱並且沒有$ DISPLAY環境變量
我有一種感覺,這跟,我通過我的大學遠程運行蟒蛇的事實做,所以圖像不能只是「出現」。如果我可以將圖像保存到一個文件,那爲我工作。
這是一個完整的工作示例。
import matplotlib.pyplot as plt
# Create your data
x_data = [1,2,3,4,5]
y_data = [5,4,2,3,1]
# Create a figure to hold the plot
fig = plt.figure(figsize=(5,4)) # if you don't define figsize, it should
# still work, depending on your configs
# Create a set of set of axes on the plot (as you might have multiple subplots)
# This says put in an axis at position 1 as if the figure were a 1 by 1 grid
ax = fig.add_subplot(1,1,1)
# Make the scatter plot
ax.scatter(x,y)
# Save the plot
fig.savefig("foo.png")
如果這不起作用,可能發生的情況是您的matplotlib在其後端的某處使用X.您可以強制它不要通過在頂部有以下內容:
import matplotlib
# The important line!
matplotlib.use('Agg')
import matplotlib.pyplot as plt
並按順序執行。
第二部分(使用X某處)解決了我的問題。謝謝! – user3259201 2014-09-25 17:30:24
通常我們應該嘗試運行示例(並完成)。但很好的問題。 – Veedrac 2014-09-25 16:51:00
很可能有關:http://stackoverflow.com/questions/2801882/generating-a-png-with-matplotlib-when-display-is-undefined – AMacK 2014-09-25 17:10:55