बाहर कर देता है, रंग विनिर्देशों के काम के लिए आपको ax.add_artist(Rectangle)
करने की आवश्यकता है; patches.append(Rectangle)
का उपयोग करते समय, आयताकार किसी भी रंग विनिर्देश को अनदेखा करते हुए नीले रंग में (मेरे पीसी पर, कम से कम) दिखाया जाता है।
Btw, ध्यान दें artists — Matplotlib 1.2.1 documentation: class matplotlib.patches.Rectangle कहा गया है कि है कि वहाँ
edgecolor
- स्ट्रोक रंग
facecolor
के लिए - रंग भरने के लिए
... और फिर वहाँ color
है - जो मूल रूप से सेट दोनों स्ट्रोक और एक ही समय में रंग भरें।
:
import matplotlib.pyplot as plt
import matplotlib.collections as collections
import matplotlib.ticker as ticker
import matplotlib
print matplotlib.__version__ # 0.99.3
fig=plt.figure() #pylab.figure()
ax=fig.add_subplot(111)
ax.set_xlim([-400, -380]) #pylab.xlim([-400, 400])
ax.set_ylim([-400, -380]) #pylab.ylim([-400, 400])
patches = []
polygon = plt.Rectangle((-400, -400), 10, 10, color='yellow') #Rectangle((-400, -400), 10, 10, color='y')
patches.append(polygon)
pol2 = plt.Rectangle((-390, -390), 10, 10, facecolor='yellow', edgecolor='violet', linewidth=2.0)
ax.add_artist(pol2)
p = collections.PatchCollection(patches) #, cmap=matplotlib.cm.jet)
ax.add_collection(p)
ax.xaxis.set_major_locator(ticker.MultipleLocator(20)) # (MultipleLocator(20))
ax.yaxis.set_major_locator(ticker.MultipleLocator(20)) # (MultipleLocator(20))
plt.show() #pylab.show()
इस उत्पादन है:
यहाँ संशोधित ओपी कोड है, जो मैं लिनक्स (Ubuntu 11.04) पर परीक्षण किया है, अजगर 2.7, matplotlib 0.99.3 है