मेरे पास एक डेटासेट है जिसमें विशेषता x, y है और उन्हें x-y सतह में प्लॉट किया जा सकता है।क्या matplotlib स्कैटर प्लॉट बड़ी संख्या में डेटा के लिए धीमा है?
मूल रूप से, मैं कोड
df.plot(kind='scatter', x='x', y='y', alpha=0.10, s=2)
plt.gca().set_aspect('equal')
का उपयोग कोड हाल ही में बहुत डेटा के बारे में 50000.
आकार के साथ त्वरित है, मैं आकार के बारे में 2500000. साथ एक नए डाटासेट का उपयोग करें, और बिखराव की साजिश हो जाता है बहुत धीमा
मैं जानना चाहता हूं, अगर यह एक अपेक्षित व्यवहार है, और यदि प्लॉट की गति में सुधार करने के लिए मैं कुछ भी कर सकता हूं?
यह स्पष्ट रूप से अंक की संख्या के संबंध में कम से कम रैखिक है। आपके मार्कर आकार, डिस्प्ले और डीपीआई के आधार पर मैं कल्पना नहीं कर सकता कि इतने सारे बिंदुओं को साकार करने का कोई मतलब नहीं है। तो एक प्राकृतिक दृष्टिकोण: अपने विशाल डेटा को डाउन-नमूना (प्लॉट केवल 10%, यादृच्छिक रूप से चयनित)। जब आप वेक्टर-ग्राफिक्स आधारित स्वरूपों में अपनी साजिश को आउटपुट करना शुरू करते हैं तो यह और भी महत्वपूर्ण हो सकता है। ** संपादित करें: ** मुझे पूरा यकीन है कि अल्फा का उपयोग भी यह बहुत धीमा कर रहा है। यदि आप कुछ घनत्व-साजिश (जोर/छायांकन के उपयोग से) का अनुकरण करना चाहते हैं, तो निश्चित रूप से बेहतर दृष्टिकोण हैं, लेकिन यहां पर्याप्त जानकारी नहीं है – sascha
एक और सुझाव यह है कि आप एक पिक्सेल-आधारित चित्र बना सकते हैं तत्व आकर्षित कर सकते हैं। यह स्मृति की खपत और गति को काफी कम करता है। –
प्रश्न वास्तव में है * "अरे, मैंने एक कारक 50 द्वारा अंक की संख्या में वृद्धि की है और मेरी साजिश गति अचानक 50 गुना धीमी है। क्या कोई मुझे कारण बता सकता है?" *? – ImportanceOfBeingErnest