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

Matplotlib में imshow स्केल बदलें बिना छवि खींचे

Matplotlib में imshow की स्केल बदलने के लिए extent और aspect पैरामीटर्स का उपयोग करें ताकि छवि खिंचे नहीं।

चरण

  1. फिगर आकार सेट करें और पैडिंग समायोजित करें
  2. 4×4 आयाम के यादृच्छिक डेटा बिंदु बनाएं
  3. imshow से डेटा को छवि के रूप में प्रदर्शित करें
  4. extent पैरामीटर से छवि बफर पिक्सेल निर्देशांक को डेटा स्पेस निर्देशांक प्रणाली में मैप करें
  5. aspect पैरामीटर से पहलू अनुपात मैन्युअल सेट करें (aspect=4) या ऑटो-स्केल (aspect='auto') करें
  6. plt.show() से प्रदर्शित करें

उदाहरण


import numpy as np
from matplotlib import pyplot as plt

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

data = np.random.rand(4, 4)

# extent: [xmin, xmax, ymin, ymax] - डेटा निर्देशांक में छवि सीमा
# aspect=4: चौड़ाई/ऊंचाई अनुपात 4:1 (छवि खिंचाव रोकता है)
plt.imshow(data, origin='lower', extent=[-4, 4, -1, 1], aspect=4, cmap='viridis')

plt.colorbar(label='मान')
plt.xlabel('X (डेटा निर्देशांक)')
plt.ylabel('Y (डेटा निर्देशांक)')
plt.title('imshow में extent और aspect के साथ स्केल नियंत्रण')
plt.show()

आउटपुट

4×4 ग्रिड छवि जो X: -4 से 4, Y: -1 से 1 तक फैली है, पहलू अनुपात 4:1 बनाए रखते हुए (वर्ग पिक्सेल नहीं, बल्कि डेटा अनुपात के अनुसार)।

पैरामीटर्स समझाया

पैरामीटरविवरण
extent=[xmin, xmax, ymin, ymax]छवि के कोनों के डेटा निर्देशांक
aspect'equal' (डिफ़ॉल्ट, वर्ग पिक्सेल), 'auto' (फिट टू एक्सिस), या संख्या (चौड़ाई/ऊंचाई अनुपात)
origin'upper' (डिफ़ॉल्ट, [0,0] ऊपर), 'lower' ([0,0] नीचे)

aspect मोड्स

  • aspect='equal': पिक्सेल वर्ग (1:1), डेटा अनुपात विकृत हो सकता है
  • aspect='auto': छवि एक्सिस भरने के लिए खिंचती है
  • aspect=N: पिक्सेल अनुपात N:1 (चौड़ाई:ऊंचाई)

उदाहरण: वास्तविक दुनिया निर्देशांक


# भौगोलिक डेटा: 100x100 पिक्सेल = 10km x 5km
extent = [0, 10, 0, 5]  # km में
aspect = 10/5  # = 2.0
plt.imshow(elevation_data, extent=extent, aspect=aspect, origin='lower')

मूल कोड नोट

मूल उदाहरण में aspect=4 का उपयोग किया गया है जो 4:4 डेटा के लिए 4:1 अनुपात बनाता है - यह जानबूझकर गैर-वर्ग पिक्सेल दर्शाता है।

  1. Tkinter में स्केल की मदद से एंट्री विजेट का मान कैसे बदलें? Tkinter में स्केल की मदद से एंट्री विजेट का मान कैसे बदलें?

    Tkinter एंट्री विजेट एक इनपुट विजेट है जो केवल सिंगल-लाइन उपयोगकर्ता इनपुट का समर्थन करता है। यह टेक्स्ट फ़ील्ड में सभी वर्णों को स्वीकार करता है जब तक कि इनपुट के लिए कोई प्रतिबंध सेट न हो। हम स्केल विजेट की मदद से एंट्री विजेट का मान बदल सकते हैं। स्केल विजेट में एक निचला मान और एक थ्रेशोल्ड होता

  1. APFS एन्क्रिप्शन पासवर्ड सुरक्षित रूप से बदलें और खोया डेटा रिकवर करें APFS एन्क्रिप्शन पासवर्ड सुरक्षित रूप से बदलें और खोया डेटा रिकवर करें

     सारांश: डिस्क यूटिलिटी चेंज पासवर्ड ग्रे आउट? टर्मिनल में APFS एन्क्रिप्शन पासफ्रेज नहीं बदल सकते? यहां बताया गया है कि APFS एन्क्रिप्शन पासवर्ड कैसे बदलें और iBoysoft Mac Data Recovery की मदद से APFS एन्क्रिप्टेड वॉल्यूम से खोया डेटा रिकवर करें।APFS एन्क्रिप्शन नेटिव एन्क्रिप्शन के साथ डिज़ाइ

  1. इमेज रिसाइज़र के साथ आसानी से इमेज फॉर्मेट बदलें - चरण-दर-चरण गाइड इमेज रिसाइज़र के साथ आसानी से इमेज फॉर्मेट बदलें - चरण-दर-चरण गाइड

    एक डिजिटल इमेज, हाथ में लिए गए स्नैपशॉट के विपरीत, विभिन्न उद्देश्यों के लिए उपयोग की जा सकती है। आप उन्हें रिसाइज़, ट्रिम, रोटेट, और रिसाइज़ कर सकते हैं, साथ ही उनके फॉर्मेट को संशोधित भी कर सकते हैं। हालांकि, यह सब करने के लिए, आपको एक इमेज एडिटर टूल की आवश्यकता होगी जो इन कार्यों में आपकी सहायता