Anda dapat dengan mudah mengisi area dengan warna apa pun di antara garis atau di bawah kurva menggunakan Matplotlib Line Plots
Parameter matplotlib. pyplot. fill_between() atau plt. isi_antara()
Sintaks untuk plt. fill_between() adalah
matplotlib.pyplot.fill_between(x, y1, y2=0, where=None, interpolate=False, step=None, *, data=None, **kwargs)Dan parameter untuk fill_between() adalah. -
#ParameterTypeDescription1xarray (panjang N) Koordinat x node yang menentukan kurva. 2y1array (panjang N) atau skalarKoordinat y dari node yang mendefinisikan kurva pertama. 3y2array (panjang N) atau skalar, opsional, default. 0Koordinat y dari node yang mendefinisikan kurva kedua. 4di mana susunan bool (panjang N), opsional, default. Tidak adaTentukan di mana untuk mengecualikan beberapa bidang horizontal agar tidak diisi. Daerah yang diisi ditentukan oleh koordinat x[di mana]. Lebih tepatnya, isi antara x[i] dan x[i+1] jika di mana[i] dan di mana[i+1]. Perhatikan bahwa definisi ini menyiratkan bahwa nilai True terpisah antara dua nilai Salah di di mana tidak akan menghasilkan pengisian. Kedua sisi posisi True tetap tidak terisi karena nilai False berdekatan. 5interpolatebool, opsionalOpsi ini hanya relevan jika di mana digunakan dan kedua kurva saling bersilangan. Secara semantik, di mana sering digunakan untuk y1 > y2 atau serupaSecara default, simpul poligon yang menentukan bidang yang terisi hanya akan ditempatkan pada posisi dalam larik x
Poligon seperti itu tidak dapat mendeskripsikan semantik di atas yang dekat dengan persimpangan. Bagian-x yang berisi persimpangan hanya dipotong
Menyetel interpolasi ke True akan menghitung titik persimpangan sebenarnya dan memperluas wilayah yang terisi hingga titik ini. 6step{'pre', 'post', 'mid'}, opsionalTentukan langkah jika pengisiannya harus berupa fungsi langkah, i. e. konstan di antara x. Nilai menentukan di mana langkah akan terjadi
- 'pra'. Nilai y terus menerus ke kiri dari setiap posisi x, i. e. interval (x[i-1], x[i]] memiliki nilai y[i]
- 'pos'. Nilai y diteruskan secara konstan ke kanan dari setiap posisi x, i. e. interval [x[i], x[i+1]) memiliki nilai y[i]
- 'pertengahan'. Langkah-langkah terjadi di tengah-tengah antara posisi x
Mengisi area di bawah plot garis sederhana di Matplotlib
Pertama-tama kita akan membuat Matplotlib Line Plot sederhana menggunakan plt. plot() dan kemudian isi seluruh area di bawah kurva menggunakan
# matplotlib_area_plots.py import matplotlib.pyplot as plt ages = [12, 13, 14, 15, 16, 17, 18, 19, 20, 21] total_population = [27877307, 24280683, 25258169, 25899454, 24592293, 21217467, 27958147, 20859088, 28882735, 19978972] plt.plot(ages, total_population) plt.xlabel("Age") plt.ylabel("Total Population") plt.title("Age-wise population of India") plt.tight_layout() plt.fill_between(ages, total_population) plt.show() _Mengisi hanya area tertentu di bawah kurva di Matplotlib
Anda juga dapat mengisi area/nilai tertentu dengan mendeklarasikan y2 in. Dalam contoh berikut, kita telah menetapkan y2 sebagai 25000000 dan ini hanya akan mengisi area antara total_population dan nilai y2. Juga, kami telah mengubah opasitas isian dengan meneruskan nilai alpha ke plt. isi_antara()
plt.fill_between(ages, total_population, 25000000, alpha=0.30)Di sini Anda dapat dengan mudah melihat, kelompok umur mana yang memiliki populasi di atas 25000000 dan mana yang di bawahnya
Mengisi area dengan warna berbeda di Matplotlib-Conditional Filling of Area
Sekarang, kita akan mengisi area antara garis/kurva dengan warna yang berbeda tergantung pada kondisi tertentu. Untuk lebih memahaminya, kami akan kembali membawa contoh Cricket. Katakanlah, India diberi target 89 run dalam sepuluh overs, artinya run-rate yang dibutuhkan adalah 8. 9 run per over. Sekarang kita akan memplot run-rate India di akhir masing-masing sebagai bagan garis dan kemudian mengisi area antara kurva run-rate dan run-rate yang diperlukan menggunakan dan kemudian kita akan mengatur warna area yang diisi
# matplotlib_area_plots.py import matplotlib.pyplot as plt overs = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] run_rate = [6, 7.5, 8.3, 8, 9.2, 8.5, 9.4, 8.7, 8.8, 8.9] plt.plot(overs, run_rate) plt.xlabel("Overs") plt.ylabel("Run Rate") plt.title("Over-wise run rate of India") plt.tight_layout() plt.fill_between(overs, run_rate, 8.9, alpha=0.30) plt.show()Jadi, di atas kita telah memplot run-rate sebagai Matplotlib Line Plot dan kemudian mengisi area antara kurva dan run-rate yang diperlukan. Sekarang untuk memberikan visualisasi yang lebih baik, kita perlu mewarnai area di mana run-rate berada di atas run-rate yang dibutuhkan dengan warna hijau dan area di mana run-rate di bawah run-rate yang dibutuhkan dengan warna merah. Ini akan memberi kita gambaran yang jelas tentang bagaimana kinerja tim di setiap akhir. Untuk ini, kita akan menggunakan numpy dan mengubah run-rate dan run-rate yang diperlukan menjadi array menggunakan np. array() sehingga kita bisa mengecek kondisinya menggunakan where
# matplotlib_area_plots.py import matplotlib.pyplot as plt import numpy as np overs = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] run_rate = [6, 7.5, 8.3, 8, 9.2, 8.5, 9.4, 8.7, 8.8, 8.9] required_run_rate = 8.9 z1 = np.array(run_rate) z2 = np.array([required_run_rate] * 10) plt.plot(overs, run_rate) plt.xlabel("Overs") plt.ylabel("Run Rate") plt.title("Over-wise run rate of India") plt.tight_layout() plt.fill_between(overs, run_rate, required_run_rate, where=(z1 < z2), alpha=0.30, color='red', interpolate=True) plt.fill_between(overs, run_rate, 8.9, where=(z1 >= z2), alpha=0.30, color='green', interpolate=True) plt.show() _Mengatur label/legenda ke area yang diisi di Matplotlib
Kami juga dapat mengatur label dan kemudian memanggil untuk menunjukkan label
# matplotlib_area_plots.py plt.fill_between(overs, run_rate, required_run_rate, where=(z1 < z2), alpha=0.30, color='red', interpolate=True, label='Below RRR') plt.fill_between(overs, run_rate, 8.9, where=(z1 >= z2), alpha=0.30, color='green', interpolate=True, label='Above RRR') plt.legend()Mengisi area di bawah kurva garis di Matplotlib - Video
Kami dengan senang hati memberi tahu Anda bahwa kami akan membuat Seri Video Tutorial Matplotlib di Youtube. Lihat di bawah ini
Daftar Isi Tutorial Matplotlib dengan Python
Tutorial Matplotlib dengan Python. Bab 1. pengantar
Tutorial Matplotlib dengan Python. Bab 2. Mengekstraksi Data dari CSV dan memplot Bagan Batang
Bagan Pai dengan Python. Tutorial Matplotlib dengan Python. bagian 3
Matplotlib Stack Plots/Bars. Tutorial Matplotlib dengan Python. Bab 4
Area Pengisian pada Petak Garis. Tutorial Matplotlib dengan Python. Bab 5
Histogram Python. Tutorial Matplotlib dengan Python. Bab 6
Scatter Plotting dengan Python. Tutorial Matplotlib. Bab 7
Plot Seri Waktu dengan Python. Tutorial Matplotlib. Bab 8
Merencanakan Waktu Nyata Python. Tutorial Matplotlib. Bab 9
Subplot Matplotlib dengan Python. Tutorial Matplotlib. Bab 10
Bagan Lilin Python. Tutorial Matplotlib. Bab 11
Jika Anda menyukai tutorial kami, ada berbagai cara untuk mendukung kami, yang paling mudah adalah membagikan postingan ini. Anda juga dapat mengikuti kami di facebook, twitter dan youtube