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

Python Matplotlib में बार प्लॉट के बार्स के ऊपर टेक्स्ट कैसे लिखें?

बार प्लॉट के प्रत्येक बार के ऊपर उसका मान दिखाने के लिए पैचेज़ को इन्यूमरेट करके ax.text() का उपयोग करें।

चरण

  • फिगर साइज़ और ऑटोलेआउट सेट करें।
  • वर्ष, जनसंख्या डेटा और x पोजीशन ऐरे बनाएं।
  • ax.bar() से बार्स प्लॉट करें और पैचेज़ प्राप्त करें।
  • प्रत्येक पैच के लिए get_height(), get_x(), get_width() से पोजीशन कैलकुलेट करें।
  • ax.text() से बार के ऊपर मान लिखें।
  • plt.show() से दिखाएं।

उदाहरण कोड

from matplotlib import pyplot as plt
import numpy as np

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

years = [1901, 1911, 1921, 1931, 1941, 1951, 1961, 1971, 1981, 1991, 2001, 2011]
population = [237.4, 238.4, 252.09, 251.31, 278.98, 318.66, 361.09, 439.23, 548.16, 683.33, 846.42, 1028.74]

x = np.arange(len(years))
width = 0.35

fig, ax = plt.subplots()
ax.set_ylabel('Population (in million)')
ax.set_title('Years')
ax.set_xticks(x)
ax.set_xticklabels(years)

pps = ax.bar(x - width / 2, population, width, label='population')

for p in pps:
    height = p.get_height()
    ax.text(x=p.get_x() + p.get_width() / 2, y=height + .10, s=f"{height}", ha='center')

plt.show()

आउटपुट

बार चार्ट जहां प्रत्येक बार के ऊपर जनसंख्या मान प्रदर्शित है।

  1. Python में Matplotlib में CDF कैसे प्लॉट करें? Python में Matplotlib में CDF कैसे प्लॉट करें?

    Python में Matplotlib में CDF प्लॉट करने के लिए निम्नलिखित चरणों का पालन करें: चरण फिगर का आकार सेट करें और सबप्लॉट्स के बीच पैडिंग एडजस्ट करें। सैंपल डेटा की संख्या के लिए वेरिएबल N इनिशियलाइज़ करें। NumPy का उपयोग करके रैंडम डेटा बनाएं। data और bins=10 के साथ डेटा सेट का हिस्टोग्राम कंप्यूट करें

  1. Matplotlib में प्लॉट पर एनिमेटेड टेक्स्ट कैसे बनाएं? Matplotlib में प्लॉट पर एनिमेटेड टेक्स्ट कैसे बनाएं?

    Matplotlib के FuncAnimation का उपयोग करके प्लॉट पर टेक्स्ट को एनिमेट करें। यह ट्यूटोरियल एक टाइपिंग इफेक्ट दिखाता है। चरण फिगर और एक्सिस बनाएं, एक्सिस लिमिट्स सेट करें। एक स्ट्रिंग वेरिएबल इनिशियलाइज़ करें। ax.text() से प्रारंभिक टेक्स्ट रखें। animation.FuncAnimation से एनिमेशन फंक्शन परिभाषित करें

  1. Matplotlib में लीजेंड में केवल टेक्स्ट लेबल कैसे दिखाएं (मार्कर/लाइन छुपाएं)? Matplotlib में लीजेंड में केवल टेक्स्ट लेबल कैसे दिखाएं (मार्कर/लाइन छुपाएं)?

    लीजेंड में केवल टेक्स्ट दिखाने के लिए legend() में handlelength=0, handletextpad=0, fancybox=False सेट करें। चरण फिगर साइज़ और ऑटोलेआउट सेट करें। रैंडम डेटा प्लॉट करें और लेबल दें। ax.legend(loc=upper right, handlelength=0, handletextpad=0, fancybox=True) से लीजेंड बनाएं। plt.show() से दिखाएं। उदा