2013-06-22 57 views
0

我不知道如何說話;當我創建我的直方圖時,它應該有0到255的值[灰色陰影中的黑色到白色值],但它幾乎總是會達到300左右。我的代碼中是否存在與x範圍有關的東西?Matplotlib.plot直方圖有額外的空間

from PIL import Image 
import matplotlib.pyplot as plt 
import urllib, cStringIO 

file = cStringIO.StringIO(urllib.urlopen("http://www.animal-photos.org/_photo/2715313.jpg").read()) 
im = Image.open(file) 
im = im.convert("L") 
data = list(im.getdata()) 
plt.hist(data, color = "gray", bins = 256, label = "Gray Histogram",) 
plt.xlabel("Gray Value (0,256)") 
plt.show() 

已添加第一部分[文件部分],以便代碼實際運行;該網址只是我打開的一張黑白JPG文件。該程序剪切圖像,並通過直方圖告訴我們有多少像素有不同的灰度(由值0到255給出)。

回答

2

蜱的默認自動定位器會嘗試使'漂亮'的範圍(如最接近的數百)。

你只需要設置X-限制

plt.gca().set_xlim([0, 255]) 

解決您的問題。

+0

太棒了,這個作品!謝謝! – james