Apa gunanya matplotlib di python?

Kami sekarang akan melihat secara mendalam paket Matplotlib untuk visualisasi dengan Python. Matplotlib adalah perpustakaan visualisasi data multi-platform yang dibangun di atas array NumPy, dan dirancang untuk bekerja dengan tumpukan SciPy yang lebih luas. Itu dikandung oleh John Hunter pada tahun 2002, awalnya sebagai tambalan ke IPython untuk mengaktifkan plotting gaya MATLAB interaktif melalui gnuplot dari baris perintah IPython. Pencipta IPython, Fernando Perez, pada saat itu sedang berjuang untuk menyelesaikan PhD-nya, dan memberi tahu John bahwa dia tidak akan punya waktu untuk meninjau tambalan selama beberapa bulan. John mengambil ini sebagai isyarat untuk berangkat sendiri, dan paket Matplotlib lahir, dengan versi 0. 1 dirilis pada tahun 2003. Ini menerima dorongan awal ketika diadopsi sebagai paket perencanaan pilihan dari Space Telescope Science Institute (orang-orang di belakang Teleskop Hubble), yang secara finansial mendukung pengembangan Matplotlib dan memperluas kemampuannya secara besar-besaran.

Salah satu fitur terpenting Matplotlib adalah kemampuannya untuk bekerja dengan baik dengan banyak sistem operasi dan backend grafis. Matplotlib mendukung lusinan backend dan tipe keluaran, yang berarti Anda dapat mengandalkannya untuk bekerja terlepas dari sistem operasi mana yang Anda gunakan atau format keluaran mana yang Anda inginkan. Pendekatan lintas platform, segalanya untuk semua orang ini telah menjadi salah satu kekuatan besar Matplotlib. Ini telah mengarah ke basis pengguna yang besar, yang pada gilirannya telah mengarah ke basis pengembang aktif dan alat-alat canggih Matplotlib dan di mana-mana dalam dunia Python ilmiah.

Namun, dalam beberapa tahun terakhir, antarmuka dan gaya Matplotlib mulai menunjukkan usianya. Alat yang lebih baru seperti ggplot dan ggvis dalam bahasa R, bersama dengan alat visualisasi web berdasarkan kanvas D3js dan HTML5, sering kali membuat Matplotlib terasa kikuk dan kuno. Tetap saja, saya berpendapat bahwa kita tidak dapat mengabaikan kekuatan Matplotlib sebagai mesin grafis lintas platform yang teruji dengan baik. Versi Matplotlib terbaru membuatnya relatif mudah untuk mengatur gaya plotting global baru (lihat Menyesuaikan Matplotlib. Konfigurasi dan Lembar Gaya), dan orang-orang telah mengembangkan paket baru yang dibangun di atas internalnya yang kuat untuk mendorong Matplotlib melalui API yang lebih bersih dan lebih modern—misalnya, Seaborn (dibahas dalam Visualisasi Dengan Seaborn), ggpy, HoloViews, Altair, dan bahkan Pandas . Bahkan dengan pembungkus seperti ini, masih sering berguna untuk menyelami sintaks Matplotlib untuk menyesuaikan hasil akhir plot. Untuk alasan ini, saya percaya bahwa Matplotlib sendiri akan tetap menjadi bagian penting dari tumpukan visualisasi data, bahkan jika alat baru membuat komunitas secara bertahap beralih dari menggunakan API Matplotlib secara langsung

Tips Matplotlib Umum

Sebelum kita menyelami detail pembuatan visualisasi dengan Matplotlib, ada beberapa hal berguna yang harus Anda ketahui tentang penggunaan paket

Mengimpor Matplotlib

Sama seperti kita menggunakan steno

plt.style.use('classic')
5 untuk NumPy dan steno
plt.style.use('classic')
6 untuk Pandas, kita akan menggunakan beberapa steno standar untuk impor Matplotlib

Dalam [1]

import matplotlib as mpl
import matplotlib.pyplot as plt

Antarmuka

plt.style.use('classic')
7 adalah yang paling sering kita gunakan, seperti yang akan kita lihat di sepanjang bab ini

Mengatur Gaya

Kami akan menggunakan arahan

plt.style.use('classic')
_8 untuk memilih gaya estetika yang sesuai untuk figur kami. Di sini kita akan mengatur gaya
plt.style.use('classic')
_9, yang memastikan bahwa plot yang kita buat menggunakan gaya Matplotlib klasik

Di [2]

plt.style.use('classic')

Sepanjang bagian ini, kami akan menyesuaikan gaya ini sesuai kebutuhan. Perhatikan bahwa stylesheet yang digunakan di sini didukung pada Matplotlib versi 1. 5; . Untuk informasi selengkapnya tentang stylesheet, lihat Menyesuaikan Matplotlib. Konfigurasi dan Style Sheets

# ------- file: myplot.py ------ import matplotlib.pyplot as plt import numpy as np x = np.linspace(0, 10, 100) plt.plot(x, np.sin(x)) plt.plot(x, np.cos(x)) plt.show() 0 atau Tidak # ------- file: myplot.py ------ import matplotlib.pyplot as plt import numpy as np x = np.linspace(0, 10, 100) plt.plot(x, np.sin(x)) plt.plot(x, np.cos(x)) plt.show() 0?

Visualisasi yang tidak dapat Anda lihat tidak akan banyak berguna, tetapi cara Anda melihat plot Matplotlib bergantung pada konteksnya. Penggunaan terbaik Matplotlib berbeda tergantung bagaimana Anda menggunakannya;

Merencanakan dari naskah

Jika Anda menggunakan Matplotlib dari dalam skrip, fungsi

# ------- file: myplot.py ------
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 100)

plt.plot(x, np.sin(x))
plt.plot(x, np.cos(x))

plt.show()
2 adalah teman Anda.
# ------- file: myplot.py ------
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 100)

plt.plot(x, np.sin(x))
plt.plot(x, np.cos(x))

plt.show()
2 memulai perulangan peristiwa, mencari semua objek gambar yang sedang aktif, dan membuka satu atau lebih jendela interaktif yang menampilkan gambar atau gambar Anda

Jadi, misalnya, Anda mungkin memiliki file bernama myplot. py yang berisi berikut ini

# ------- file: myplot.py ------
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 100)

plt.plot(x, np.sin(x))
plt.plot(x, np.cos(x))

plt.show()

Anda kemudian dapat menjalankan skrip ini dari prompt baris perintah, yang akan menghasilkan jendela terbuka dengan gambar Anda ditampilkan

$ python myplot.py

Perintah

# ------- file: myplot.py ------
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 100)

plt.plot(x, np.sin(x))
plt.plot(x, np.cos(x))

plt.show()
_2 melakukan banyak hal, karena harus berinteraksi dengan backend grafis interaktif sistem Anda. Detail dari operasi ini dapat sangat bervariasi dari sistem ke sistem dan bahkan instalasi ke instalasi, tetapi matplotlib melakukan yang terbaik untuk menyembunyikan semua detail ini dari Anda

Satu hal yang harus diperhatikan. perintah

# ------- file: myplot.py ------
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 100)

plt.plot(x, np.sin(x))
plt.plot(x, np.cos(x))

plt.show()
2 harus digunakan hanya sekali per sesi Python, dan paling sering terlihat di akhir skrip. Beberapa perintah
# ------- file: myplot.py ------
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 100)

plt.plot(x, np.sin(x))
plt.plot(x, np.cos(x))

plt.show()
_0 dapat menyebabkan perilaku yang bergantung pada backend yang tidak dapat diprediksi, dan sebagian besar harus dihindari

Merencanakan dari shell IPython

Akan sangat mudah untuk menggunakan Matplotlib secara interaktif di dalam shell IPython (lihat IPython. Di luar Python Normal). IPython dibangun untuk bekerja dengan baik dengan Matplotlib jika Anda menentukan mode Matplotlib. Untuk mengaktifkan mode ini, Anda dapat menggunakan perintah ajaib

# ------- file: myplot.py ------
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 100)

plt.plot(x, np.sin(x))
plt.plot(x, np.cos(x))

plt.show()
7 setelah memulai
# ------- file: myplot.py ------
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 100)

plt.plot(x, np.sin(x))
plt.plot(x, np.cos(x))

plt.show()
8

In [1]: %matplotlib
Using matplotlib backend: TkAgg

In [2]: import matplotlib.pyplot as plt

Pada titik ini, perintah plot

plt.style.use('classic')
_7 akan menyebabkan jendela gambar terbuka, dan perintah lebih lanjut dapat dijalankan untuk memperbarui plot. Beberapa perubahan (seperti memodifikasi properti garis yang sudah digambar) tidak akan digambar secara otomatis. untuk memaksakan pembaruan, gunakan
$ python myplot.py
0. Menggunakan
# ------- file: myplot.py ------
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 100)

plt.plot(x, np.sin(x))
plt.plot(x, np.cos(x))

plt.show()
_2 dalam mode Matplotlib tidak diperlukan

Merencanakan dari notebook IPython

Notebook IPython adalah alat analisis data interaktif berbasis browser yang dapat menggabungkan narasi, kode, grafik, elemen HTML, dan banyak lagi ke dalam satu dokumen yang dapat dieksekusi (lihat IPython. Di luar Python Normal)

Merencanakan secara interaktif dalam notebook IPython dapat dilakukan dengan perintah

# ------- file: myplot.py ------
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 100)

plt.plot(x, np.sin(x))
plt.plot(x, np.cos(x))

plt.show()
7, dan bekerja dengan cara yang mirip dengan shell IPython. Di notebook IPython, Anda juga memiliki opsi untuk menyematkan grafik langsung di notebook, dengan dua kemungkinan opsi

  • $ python myplot.py
    3 akan mengarah ke plot interaktif yang disematkan di dalam notebook
  • $ python myplot.py
    4 akan menghasilkan gambar statis dari plot Anda yang disematkan di notebook

Untuk buku ini, kami umumnya akan memilih

$ python myplot.py
4

Dalam [3]

%matplotlib inline

Setelah menjalankan perintah ini (hanya perlu dilakukan sekali per kernel/sesi), setiap sel di dalam notebook yang membuat plot akan menyematkan gambar PNG dari grafik yang dihasilkan

Apa fungsi matplotlib di Python?

Matplotlib adalah perpustakaan visualisasi data dan grafik lintas platform untuk Python dan ekstensi numeriknya NumPy. Dengan demikian, ia menawarkan alternatif open source yang layak untuk MATLAB. Pengembang juga dapat menggunakan API matplotlib (Antarmuka Pemrograman Aplikasi) untuk menyematkan plot dalam aplikasi GUI.

Apa gunanya matplotlib dan Pyplot?

matplotlib. pyplot adalah kumpulan fungsi yang membuat matplotlib berfungsi seperti MATLAB . Setiap fungsi pyplot membuat beberapa perubahan pada gambar. e. g. , membuat gambar, membuat area plot pada gambar, memplot beberapa garis pada area plot, menghiasi plot dengan label, dll.

Apa manfaat dari matplotlib?

Matplotlib mencoba membuat hal yang mudah menjadi mudah dan hal yang sulit menjadi mungkin . Kami dapat menghasilkan grafik siap publikasi berkualitas tinggi dengan sedikit usaha (kadang-kadang kami dapat mencapai ini hanya dengan satu baris kode atau lebih), dan untuk grafik yang rumit, kami memiliki perpustakaan yang kuat untuk mendukung kebutuhan kami.

Apa aplikasi matplotlib di Python?

Matplotlib memudahkan untuk menghasilkan plot, histogram, spektrum daya, diagram batang, diagram kesalahan, dan jenis plot lainnya , hanya dengan . Aplikasi Interaktif Menggunakan Matplotlib akan mengajari Anda cara mengubah plot Anda menjadi aplikasi yang sepenuhnya interaktif untuk eksplorasi data dan sintesis informasi.