Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Memaparkan Nilai pada Plot Bar Mendatar dalam Matplotlib?

Bagaimanakah Saya Boleh Memaparkan Nilai pada Plot Bar Mendatar dalam Matplotlib?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-27 17:16:12411semak imbas

How Can I Display Values on a Horizontal Bar Plot in Matplotlib?

Memaparkan Nilai pada Bar Mendatar

Untuk memaparkan nilai setiap bar dalam plot bar mendatar, anda boleh menggunakan yang berikut kaedah:

for i, v in enumerate(y):
    ax.text(v + 3, i, str(v), color='blue', fontweight='bold', verticalalignment='center')

Penjelasan:

  1. Lelaran melalui nilai-y.
  2. Untuk setiap nilai-y, plot teks ke sebelah kanan bar dengan menambah 3 pada nilai-y.
  3. Gunakan indeks setiap nilai-y sebagai koordinat-y untuk teks.
  4. Tetapkan teks menjadi nilai-y sebagai rentetan.
  5. Gayakan teks seperti yang dikehendaki (cth., warna biru, berat tebal , berpusat menegak).

Contoh:

# Update the x and y values from the original example
x = [u'INFO', u'CUISINE', u'TYPE_OF_PLACE', u'DRINK', u'PLACE', u'MEAL_TIME', u'DISH', u'NEIGHBOURHOOD']
y = [160, 167, 137, 18, 120, 36, 155, 130]

fig, ax = plt.subplots()
width = 0.75  # the width of the bars
ind = np.arange(len(y))  # the x locations for the groups
ax.barh(ind, y, width, color="blue")
ax.set_yticks(ind + width / 2)
ax.set_yticklabels(x, minor=False)
plt.title('title')
plt.xlabel('x')
plt.ylabel('y')

# Add code to display the values on the bars
for i, v in enumerate(y):
    ax.text(v + 3, i, str(v), color='blue', fontweight='bold', verticalalignment='center')

# Display the plot
plt.show()

Ini akan menghasilkan plot bar mendatar dengan nilai dipaparkan di atas setiap bar.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memaparkan Nilai pada Plot Bar Mendatar dalam Matplotlib?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn