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

Matplotlib में दो लाइन सेगमेंट्स का इंटरसेक्शन कैसे खोजें?

Matplotlib में दो लाइन सेगमेंट्स का इंटरसेक्शन खोजने और उस बिंदु से गुजरने वाली क्षैतिज और लंबवत रेखाएं खींचने के लिए, हम निम्नलिखित चरण अपना सकते हैं -

  • फिगर का आकार सेट करें और सबप्लॉट्स के बीच और आसपास पैडिंग समायोजित करें।
  • ढलान (m1, m2) और इंटरसेप्ट (c1 और c2) का उपयोग करके दो लाइनें बनाएं। ढलान और इंटरसेप्ट मान इनिशियलाइज़ करें।
  • NumPy का उपयोग करके x डेटा पॉइंट्स बनाएं।
  • plot() मेथड का उपयोग करके x, m1, m2, c2 और c1 डेटा पॉइंट्स प्लॉट करें।
  • इंटरसेप्ट और ढलान मानों का उपयोग करके इंटरसेक्शन बिंदु खोजें।
  • डॉटेड लाइनस्टाइल के साथ क्षैतिज और लंबवत रेखाएं प्लॉट करें।
  • प्लॉट पर xi और yi पॉइंट्स प्लॉट करें।
  • फिगर प्रदर्शित करने के लिए show() मेथड का उपयोग करें।

उदाहरण

import matplotlib.pyplot as plt
import numpy as np

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

m1, c1 = 0.1, 2.0
m2, c2 = 2.0, -3.0
x = np.linspace(-10, 10, 500)
plt.plot(x, x * m1 + c1, 'red')
plt.plot(x, x * m2 + c2, 'green')
plt.xlim(-2, 8)
plt.ylim(-2, 8)

xi = (c1 - c2) / (m2 - m1)
yi = m1 * xi + c1

plt.axvline(x=xi, color='gray', linestyle='--')
plt.axhline(y=yi, color='gray', linestyle='--')
plt.scatter(xi, yi, color='black')
plt.show()

आउटपुट

दो प्रतिच्छेदी रेखाएं (लाल और हरी), उनके इंटरसेक्शन बिंदु पर काले डॉट के साथ ग्रे डॉटेड क्षैतिज और लंबवत रेखाएं।

Matplotlib में दो लाइन सेगमेंट्स का इंटरसेक्शन कैसे खोजें?

  1. Matplotlib (Python) में लाइन को कैसे लेबल करें? Matplotlib (Python) में लाइन को कैसे लेबल करें?

    Matplotlib में लाइन लेबल करने के लिए plot() मेथड के आर्गुमेंट में label का उपयोग करें। चरण फिगर का आकार सेट करें और सबप्लॉट्स के बीच पैडिंग एडजस्ट करें। label=line1 के साथ plot() मेथड का उपयोग करके प्लॉट करें। label=line2 के साथ plot() मेथड का उपयोग करके प्लॉट करें। फिगर पर लीजेंड रखने के लिए lege

  1. Matplotlib में हैच लाइनविड्थ कैसे बदलें? Matplotlib में हैच लाइनविड्थ कैसे बदलें?

    हैच पैटर्न की लाइनविड्थ बदलने के लिए plt.rcParams[hatch.linewidth] सेट करें। चरण फिगर साइज़ और ऑटोलेआउट सेट करें। x, y = sin(x) डेटा जनरेट करें। plt.rcParams[hatch.linewidth] = 1 सेट करें। plt.scatter() में marker=s, hatch=/, linewidth=0.05 से स्क्वायर मार्कर्स प्लॉट करें। plt.show() से दिखाएं। उद

  1. Matplotlib में दो हिस्टोग्राम का बिन विड्थ समान कैसे रखें? Matplotlib में दो हिस्टोग्राम का बिन विड्थ समान कैसे रखें?

    दो हिस्टोग्राम का बिन विड्थ समान रखने के लिए, हम डेटा के सेट का हिस्टोग्राम गणना कर सकते हैं। चरण रैंडम डेटा a, और नॉर्मल डिस्ट्रीब्यूशन b बनाएं। समान बिन विड्थ के लिए बिन्स वेरिएबल इनिशियलाइज़ करें। hist() मेथड का उपयोग करके a और बिन्स प्लॉट करें। hist() मेथड का उपयोग करके b और बिन्स प्लॉट