Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

Matplotlib में वक्र के लिए तार्किक छायांकन क्षेत्र बनाएं

Matplotlib में collections.BrokenBarHCollection.span_where का उपयोग करके वक्र के ऊपर/नीचे के क्षेत्र को तार्किक शर्तों के आधार पर छायांकित (शेड) किया जा सकता है।

चरण

  1. फिगर आकार सेट करें और पैडिंग समायोजित करें
  2. NumPy से डेटा बिंदु (t, s1, s2) बनाएं
  3. फिगर और सबप्लॉट बनाएं
  4. t और s1 प्लॉट करें; क्षैतिज रेखा जोड़ें
  5. BrokenBarHCollection.span_where से क्षैतिज बार संग्रह बनाएं
  6. संग्रह को एक्सिस में जोड़ें
  7. plt.show() से प्रदर्शित करें

उदाहरण

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.collections as collections

plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True

# डेटा बिंदु
t = np.arange(0.0, 2, 0.01)
s1 = np.sin(2 * np.pi * t)
s2 = 1.2 * np.sin(4 * np.pi * t)

fig, ax = plt.subplots()
ax.plot(t, s1, color='black')
ax.axhline(0, color='black', lw=2)

# s1 > 0 क्षेत्र को हरे रंग से छायांकित करें (y=0 से y=1 तक)
collection = collections.BrokenBarHCollection.span_where(
    t, ymin=0, ymax=1,
    where=s1 > 0, facecolor='green', alpha=0.5
)
ax.add_collection(collection)

# s1 < 0 क्षेत्र को लाल रंग से छायांकित करें (y=-1 से y=0 तक)
collection = collections.BrokenBarHCollection.span_where(
    t, ymin=-1, ymax=0,
    where=s1 < 0, facecolor='red', alpha=0.5
)
ax.add_collection(collection)

plt.show()

आउटपुट

प्लॉट में साइन वेव के धनात्मक भाग (0 से ऊपर) हरे रंग से और ऋणात्मक भाग (0 से नीचे) लाल रंग से छायांकित होंगे। पारदर्शिता (alpha=0.5) से ओवरलैप स्पष्ट रहता है।

मुख्य बिंदु

  • span_where तार्किक शर्त (where) के आधार पर क्षेत्र भरता है
  • ymin/ymax ऊर्ध्वाधर सीमा निर्धारित करते हैं
  • facecolor और alpha रंग और पारदर्शिता नियंत्रित करते हैं
  • यह दृष्टिकोण fill_between से अधिक लचीला है क्योंकि यह संग्रह (collection) लौटाता है जिसे बाद में संशोधित किया जा सकता है
  1. Matplotlib में 3D बार के लिए लीजेंड कैसे बनाएं? Matplotlib में 3D बार के लिए लीजेंड कैसे बनाएं?

    3D बार चार्ट में लीजेंड जोड़ने के लिए plt.Rectangle प्रॉक्सी आर्टिस्ट्स बनाएं और ax.legend() में पास करें। चरण फिगर साइज़ और ऑटोलेआउट सेट करें। 3D एक्सिस बनाएं और दो सेट्स के 3D बार्स प्लॉट करें (अलग रंग)। प्रत्येक सेट के लिए plt.Rectangle((0,0), 1, 1, fc=color) प्रॉक्सी बनाएं। ax.legend([proxy1, p

  1. Matplotlib में pyplot.plot() का उपयोग करके पैरामीट्राइज़्ड कर्व ड्रॉ करें Matplotlib में pyplot.plot() का उपयोग करके पैरामीट्राइज़्ड कर्व ड्रॉ करें

    pyplot.plot() का उपयोग करके पैरामीट्राइज़्ड कर्व ड्रॉ करने के लिए, हम निम्नलिखित चरण अपना सकते हैं: फिगर का आकार सेट करें और सबप्लॉट्स के बीच और आसपास पैडिंग एडजस्ट करें। सैंपल की संख्या के लिए वेरिएबल N इनिशियलाइज़ करें। NumPy का उपयोग करके t, r, x और y डेटा पॉइंट्स बनाएं। एक फिगर और सबप्ल

  1. Matplotlib में प्रत्येक सबप्लॉट के लिए एक्सिस टेक्स्ट घुमाना Matplotlib में प्रत्येक सबप्लॉट के लिए एक्सिस टेक्स्ट घुमाना

    प्रत्येक सबप्लॉट के लिए एक्सिस टेक्स्ट घुमाने के लिए, हम आर्गुमेंट में रोटेशन के साथ टेक्स्ट का उपयोग कर सकते हैं। चरण नया फिगर बनाएं या मौजूदा फिगर सक्रिय करें। add_subplot() मेथड का उपयोग करके फिगर में सबप्लॉट व्यवस्था के हिस्से के रूप में ~.axes.Axes जोड़ें। subplots_adjust() मेथड का उपयोग