2013-01-14 20 views
21

मेरे स्कैटर प्लॉट से मार्कर के इस उदाहरण में मैंने रंग को हरा, और किनारे का रंग काला रंग दिया है, और "|" पर हैच किया है। हैच पैटर्न को दिखाने के लिए मुझे किनारे रंग सेट करना होगा, हालांकि जब मैं करता हूं, तो मुझे मार्कर के चारों ओर एक बहुत मोटी सीमा मिलती है। दो प्रश्न:मार्कर सीमा चौड़ाई और हैच चौड़ाई कैसे बदलें?

1) मैं इस सीमा का आकार कैसे सेट कर सकता हूं (अधिमानतः 0 तक)?

2) मैं हैच लाइनों की मोटाई कैसे बढ़ा सकता हूं?

http://img204.imageshack.us/img204/9730/markerp.png

धन्यवाद!

+0

2 से 2: देखें [matplotlib में हैच की लाइनविड्थ कैसे बदलें?] (Http://stackoverflow.com/questions/29549530/how-to-change-the-linewidth-of-hatch- इन-मैटलप्लिपिब) – Henhuy

उत्तर

34
  1. आपको मार्कर सीमा मोटाई को नियंत्रित करने के लिए केवल linewidth सेट करने की आवश्यकता है।
  2. आप प्रतीकों को दोहराकर, हैचिंग की घनत्व बढ़ा सकते हैं (नीचे दिए गए उदाहरण में, '|' आर/एच फलक में दोहराया गया है; ध्यान दें कि एनडब्ल्यू-> एसई विकर्ण रेखाएं प्राप्त करने के लिए प्रतीक से बच जाना चाहिए ताकि दो बार वास्तव में इसे डबल करने के लिए कई वर्ण - '\\\\' घनत्व 2 है जबकि '||||' घनत्व 4 है)। हालांकि, मुझे नहीं लगता कि हैचिंग के भीतर अलग-अलग लाइनों की मोटाई नियंत्रित है।

नीचे कोड उदाहरण इस प्रकार के बिखराव भूखंडों का निर्माण करने के देखें: collections और scatter पर example hatching control

import matplotlib.pyplot as plt 
# generate some data 
x = [1,2,3,4,5,8] 
y= [i**2 for i in x] 
y2= [60-i**2+3*i for i in x] 

# plot markers with thick borders 
plt.subplot(121) 
plt.scatter(x,y, s=500, marker='s', edgecolor='black', linewidth='3', facecolor='green', hatch='|') 
# compare with no borders, and denser hatch. 
plt.subplot(122) 
plt.scatter(x,y, s=500, marker='s', edgecolor='black', linewidth='0', facecolor='green', hatch='||||') 

plt.show() 

matplotlib प्रलेखन।

+0

आप हैंच लाइनों की चौड़ाई को बदलने में सक्षम नहीं होने के बारे में सही हैं, यह मुश्किल से कोडित है (कम से कम aggbackend में) – tacaswell

+0

और टोपी के आकार को ट्यून करने की क्षमता जोड़ना एक विशाल जैसा दिखता है उपक्रम ..... – tacaswell

+0

चरित्र '' '' के गुणकों से निपटने पर, पाइथन स्ट्रिंग गुणात्मक ऑपरेटर का उपयोग करना सहायक हो सकता है। उदाहरण के लिए, एक '' 'चरित्र के लिए, चरित्र से बचने के कारण, आप स्ट्रिंग '" \\ "' का उपयोग करेंगे। 'N' पुनरावृत्ति के लिए, आप' n * "\\" 'का उपयोग कर सकते हैं, उदाहरण के लिए, '4 *" \\ "' चार' '' वर्णों की एक स्ट्रिंग देगा। – naitsirhc

संबंधित मुद्दे