this question से संबंधित, मैं प्रत्येक बिंदु के लिए निर्धारित रंगों के साथ एक 3 डी स्कैटर प्लॉट चाहता हूं। प्रश्न में पोस्ट किया गया उदाहरण मेरे सिस्टम पर काम करता है, लेकिन पहले रेड्रा के बाद (उदाहरण के लिए सहेजने के बाद या अगर मैं छवि घुमाता हूं) रंग खो जाता प्रतीत होता है, यानी सभी बिंदुओं को सामान्य गहराई से जानकारी के साथ नीले रंग में खींचा जाता है। कृपया नीचे संशोधित उदाहरण देखें।Matplotlib 3 डी स्कैटर रंग redraw
मेरा सिस्टम पाइथन 2.6.7 है मैकप्लॉटिब 1.1.0 मैक 10.8.0 पर मैकपोर्ट से स्थापित है। मैं मैकॉक्स बैकएंड का उपयोग करता हूं।
क्या कोई इस समस्या को बाधित करने के बारे में जानता है?
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
# Create Map
cm = plt.get_cmap("RdYlGn")
x = np.random.rand(30)
y = np.random.rand(30)
z = np.random.rand(30)
col = np.arange(30)
fig = plt.figure()
ax3D = fig.add_subplot(111, projection='3d')
ax3D.scatter(x, y, z, s=30, c=col, marker='o', cmap=cm)
plt.savefig('image1.png')
plt.savefig('image2.png')
यहाँ दो छवियों, मैं कर रहे हैं:
एचएम, विंडोज़ पर ही। अगर मैं लाइन 'col = np.arange (30) ' पर टिप्पणी करता हूं, तो दोनों भूखंड समान आते हैं। क्यों समझा नहीं जा सकता है। 'pyplot' एक राज्यव्यापी मॉड्यूल है, और मुझे नहीं लगता कि पुराने को बंद किए बिना एक नया आंकड़ा खोलना बुद्धिमान है। यदि हर समय केवल एक ही आंकड़ा खुला रहता है, तो मुझे लगता है कि ऐसे प्रभावों को रोका जा सकता है। –
मैंने अभी देखा है कि कोड वास्तव में दो आंकड़ों का उपयोग करता है। हालांकि, समस्या का कारण यह नहीं था। मैंने उदाहरण कोड से पहला आंकड़ा हटा दिया और समस्या बनी हुई है। यह इंगित करने के लिए धन्यवाद कि विंडोज़ पर समस्या भी मौजूद है। ऐसा लगता है कि यह किसी तरह की बग है। –
भविष्य के आगंतुकों के लिए एक नोट के रूप में, यह MatPlotLib 1.2.0 में तय किया गया प्रतीत होता है :) – Poik