Jika kita perlu memplot garis dari (1, 3) ke (8, 10), kita harus meneruskan dua larik [1, 8] dan [3, 10] ke fungsi plot
Contoh
Gambar garis dalam diagram dari posisi (1, 3) ke posisi (8, 10)
impor matplotlib. pyplot sebagai plt
impor numpy sebagai np
xpoint = np. larik([1, 8])
titik y = np. larik([3, 10])
plt. plot(titik x, titik y)
plt. menunjukkan()
Hasil
Sumbu x adalah sumbu mendatar
Sumbu y adalah sumbu vertikal
Merencanakan Tanpa Garis
Untuk memplot penanda saja, Anda dapat menggunakan parameter notasi string pintasan 'o', yang berarti 'dering'
Contoh
Gambarlah dua titik pada diagram, satu di posisi (1, 3) dan satu di posisi (8, 10)
impor matplotlib. pyplot sebagai plt
impor numpy sebagai np
xpoint = np. larik([1, 8])
titik y = np. larik([3, 10])
plt. plot(titik x, titik y, 'o')
plt. menunjukkan()
Hasil
Anda akan belajar lebih banyak tentang penanda di bab berikutnya
Beberapa Poin
Anda dapat memplot titik sebanyak yang Anda suka, pastikan Anda memiliki jumlah titik yang sama di kedua sumbu
Contoh
Buat garis dalam diagram dari posisi (1, 3) ke (2, 8) lalu ke (6, 1) dan terakhir ke posisi (8, 10)
impor matplotlib. pyplot sebagai plt
impor numpy sebagai np
xpoint = np. larik([1, 2, 6, 8])
titik y = np. larik([3, 8, 1, 10])
plt. plot(titik x, titik y)
plt. menunjukkan()
Hasil
Poin X bawaan
Jika kita tidak menentukan titik pada sumbu x, mereka akan mendapatkan nilai default 0, 1, 2, 3 (dll. , tergantung pada panjang titik-y
Jadi, jika kita mengambil contoh yang sama seperti di atas, dan menghilangkan titik-x, diagram akan terlihat seperti ini
Sebelum kita mulai. Tutorial Python ini adalah bagian dari rangkaian tutorial Paket Python kami. Anda juga dapat menemukan topik terkait Matplotlib lainnya
Pythonistas biasanya menggunakan pustaka plot Matplotlib untuk menampilkan data numerik dalam plot, grafik, dan bagan dengan Python. Berbagai fungsionalitas disediakan oleh dua API matplotlib (Application Programming Interfaces)
- Antarmuka Pyplot API, yang menawarkan hierarki objek kode yang membuat matplotlib berfungsi seperti MATLAB
- OO (Object-Oriented), yang menawarkan kumpulan objek yang dapat dirakit dengan fleksibilitas lebih besar daripada pyplot. OO API menyediakan akses langsung ke lapisan backend matplotlib.
Antarmuka pyplot lebih mudah diimplementasikan daripada versi OO dan lebih umum digunakan. Untuk informasi tentang fungsi dan terminologi pyplot, lihat. Apa itu Pyplot di Matplotlib
Tampilkan plot dengan Python. Contoh Plot
Serangkaian fungsi pyplot Matplotlib digunakan untuk memvisualisasikan dan menghias plot
Cara Membuat Plot Sederhana dengan Fungsi Plot()
Matplotlib . pyplot. plot() menyediakan antarmuka terpadu untuk membuat berbagai jenis plot.
Contoh paling sederhana menggunakan fungsi plot() untuk memplot nilai sebagai x,y coordinates in a data plot. In this case, plot() mengambil 2 parameter untuk menentukan koordinat plot.
- Parameter untuk array sumbu X axis koordinat.
- Parameter untuk larik sumbu Y koordinat.
Sebuah garis mulai dari x=2, y=4 hingga x=8, y=9 diplot dengan membuat 2 larik (2,8) and (4,9):
import matplotlib.pyplot as plt import numpy as np # X axis parameter: xaxis = np.array([2, 8]) # Y axis parameter: yaxis = np.array([4, 9]) plt.plot(xaxis, yaxis) plt.show()Gambar 1. Plot sederhana yang dibuat dengan fungsi plot()
Cara Menyesuaikan Tampilan Plot dengan Marker & Linestyle
marker dan linestyle adalah kata kunci matplotlib yang dapat digunakan untuk menyesuaikan tampilan data dalam sebuah .
- marker adalah argumen yang digunakan untuk melabeli setiap nilai data dalam plot dengan ' marker '.
- linestyle adalah argumen yang digunakan untuk menyesuaikan tampilan garis di antara nilai data, atau menghapusnya sekaligus.
Dalam contoh ini, setiap nilai data diberi label dengan huruf “o”, dan diberi gaya garis putus-putus “–”:
import matplotlib.pyplot as plt import numpy as np xaxis = np.array([2, 12, 3, 9]) # Mark each data value and customize the linestyle: plt.plot(xcoords, marker = “o”, linestyle = “--”) plt.show()_Daftar parsial karakter string yang merupakan opsi yang dapat diterima untuk marker dan linestyle :
“-” solid line style “--” dashed line style “ “ no line “o” letter markerContoh Plot Pencar Matplotlib
Matplotlib juga mendukung plot yang lebih maju, seperti plot pencar. Dalam hal ini, fungsi scatter() digunakan untuk menampilkan nilai data sebagai kumpulan x,y< . coordinates represented by standalone dots.
Dalam contoh ini, 2 larik dengan panjang yang sama (satu larik untuk nilai sumbu X dan larik lain untuk nilai sumbu Y) diplot. Setiap nilai diwakili oleh sebuah titik
Tonton videonya di sini
import matplotlib.pyplot as plt # X axis values: x = [2,3,7,29,8,5,13,11,22,33] # Y axis values: y = [4,7,55,43,2,4,11,22,33,44] # Create scatter plot: plt.scatter(x, y) plt.show()Contoh Matplotlib. Beberapa Kumpulan Data dalam Satu Plot
Matplotlib sangat fleksibel, dan dapat menampung beberapa set data dalam satu plot. Dalam contoh ini, kita akan memplot dua set data terpisah, xdata1 dan xdata2 :
Tonton videonya di sini
import matplotlib.pyplot as plt import numpy as np # Create random seed: np.random.seed(5484849901) # Create random data: xdata = np.random.random([2, 8]) # Create two datasets from the random floats: xdata1 = xdata[0, :] xdata2 = xdata[1, :] # Sort the data in both datasets: xdata1.sort() xdata2.sort() # Create y data points: ydata1 = xdata1 ** 2 ydata2 = 1 - xdata2 ** 4 # Plot the data: plt.plot(xdata1, ydata1) plt.plot(xdata2, ydata2) # Set x,y lower, upper limits: plt.xlim([0, 1]) plt.ylim([0, 1]) plt.title(“Multiple Datasets in One Plot") plt.show()_Contoh Matplotlib. Subplot
Anda juga dapat menggunakan matplotlib untuk membuat gambar kompleks yang berisi lebih dari satu plot. Dalam contoh ini, banyak sumbu diapit dalam satu gambar dan ditampilkan dalam subplot
import matplotlib.pyplot as plt import numpy as np # Create a Figure with 2 rows and 2 columns of subplots: fig, ax = plt.subplots(2, 2) x = np.linspace(0, 5, 100) # Index 4 Axes arrays in 4 subplots within 1 Figure: ax[0, 0].plot(x, np.sin(x), 'g') #row=0, column=0 ax[1, 0].plot(range(100), 'b') #row=1, column=0 ax[0, 1].plot(x, np.cos(x), 'r') #row=0, column=1 ax[1, 1].plot(x, np.tan(x), 'k') #row=1, column=1 plt.show()Gambar 2. M kapak ganda dalam subplot ditampilkan dalam satu gambar.
Contoh Matplotlib. Plot Histogram
Histogram digunakan untuk menampilkan distribusi frekuensi dalam grafik batang
Dalam contoh ini, kami akan menggabungkan kemampuan histogram dan subplot matplotlib dengan membuat plot yang berisi lima grafik batang. Area dalam grafik batang akan sebanding dengan frekuensi variabel acak, dan lebar setiap grafik batang akan sama dengan interval kelas
Tonton videonya di sini
import matplotlib.plot as plt import matplotlib.ticker as maticker import numpy as np # Create random variable: data = np.random.normal(0, 3, 800) # Create a Figure and multiple subplots containing Axes: fig, ax = plt.subplots() weights = np.ones_like(data) / len(data) # Create Histogram Axe: ax.hist(data, bins=5, weights=weights) ax.yaxis.set_major_formatter(maticker.PercentFormatter(xmax=1.0, decimals=1)) plt.title(“Histogram Plot”) plt.show()_Contoh Matplotlib. Plot Spektrum Fase
Plot spektrum fase memungkinkan kita memvisualisasikan karakteristik frekuensi sinyal
Dalam contoh lanjutan ini, kita akan memplot spektrum fase dari dua sinyal (direpresentasikan sebagai fungsi) yang masing-masing memiliki frekuensi berbeda.
import matplotlib.pyplot as plt import numpy as np # Generate pseudo-random numbers: np.random.seed(0) # Sampling interval: dt = 0.01 # Sampling Frequency: Fs = 1 / dt # ex[;aom Fs] # Generate noise: t = np.arange(0, 10, dt) res = np.random.randn(len(t)) r = np.exp(-t / 0.05) # Convolve 2 signals (functions): conv_res = np.convolve(res, r)*dt conv_res = conv_res[:len(t)] s = 0.5 * np.sin(1.5 * np.pi * t) + conv_res # Create the plot: fig, (ax) = plt.subplots() ax.plot(t, s) # Function plots phase spectrum: ax.phase_spectrum(s, Fs = Fs) plt.title(“Phase Spectrum Plot”) plt.show()Gambar 3. Fase Spektrum dari dua sinyal dengan frekuensi berbeda diplot dalam satu gambar.
Contoh Matplotlib. Plot 3D
Matplotlib juga dapat menangani plot 3D dengan mengizinkan penggunaan sumbu Z. Kami telah membuat plot pencar 2D di atas, tetapi dalam contoh ini kami akan membuat plot pencar 3D
Tonton videonya di sini
from mpl_toolkits.mplot3d import Axes3D import matplotlib.pyplot as plt fig = plt.figure() # Create 1 3D subplot: ax = fig.add_subplot(111, projection='3d') # ‘111’ is a MATlab convention used in Matplotlib # to create a grid with 1 row and 1 column. # The first cell in the grid is the new Axes location. # Create x,y,z coordinates: x =[1,2,3,4,5,6,7,8,9,10] y =[11,4,2,5,13,4,14,2,4,8] z =[2,3,4,5,5,7,9,11,19,9] # Create a 3D scatter plot with x,y,z orthogonal axis, and red "o" markers: ax.scatter(x, y, z, c='red', marker="o") # Create x,y,z axis labels: ax.set_xlabel('X Axis') ax.set_ylabel('Y Axis') ax.set_zlabel('Z Axis') plt.show()_Cara Menggunakan Backend Matplotlib
Matplotlib dapat menargetkan hampir semua format keluaran yang dapat Anda pikirkan. Paling umum, ilmuwan data menampilkan plot di notebook Jupyter mereka, tetapi Anda juga dapat menampilkan plot dalam aplikasi.
Dalam contoh ini, backend OO matplotlib menggunakan fungsi Tkinter TkAgg() untuk menghasilkan rendering kualitas tinggi Agg (Anti-Grain Geometry) . mainloop() function to display a plot:
from tkinter import * from tkinter.ttk import * import matplotlib matplotlib.use("TkAgg") from matplotlib.figure import Figure # OO backend (Tkinter) tkagg() function: from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg root = Tk() figure = Figure(figsize=(5, 4), dpi=100) plot = figure.add_subplot(1, 1, 1) x = [ 0.1, 0.2, 0.3, 0.4 ] y = [ -0.1, -0.2, -0.3, -0.4 ] plot.plot(x, y, color="red", marker="o", linestyle="--") canvas = FigureCanvasTkAgg(figure, root) canvas.get_tk_widget().grid(row=0, column=0) root.mainloop()_Gambar 4. Plot backend OO ditampilkan menggunakan fungsi Tkinter tkagg() .
Kiat Terakhir . Eksekusi skrip matplotlib membuat output teks di konsol Python (bukan bagian dari tampilan plot UI) yang mungkin menyertakan pesan peringatan atau secara visual tidak menarik. Untuk memperbaikinya, Anda dapat menambahkan titik koma (;) di akhir baris kode terakhir sebelum menampilkan plot. Sebagai contoh.
import matplotlib.pyplot as plt import numpy as np xaxis = np.array([2, 12, 3, 9]) # Mark each data value and customize the linestyle: plt.plot(xcoords, marker = “o”, linestyle = “--”) plt.show()_0Tutorial berikut akan memberi Anda petunjuk langkah demi langkah tentang cara bekerja dengan Matplotlib, termasuk
- Cara menghapus plot dengan Python
- Cara membangun array Numpy
- Apa itu Pyplot di Matplotlib?
- Cara mengubah array Numpy menjadi daftar
- Apa itu Matplotlib dengan Python?
Mengapa menggunakan ActivePython untuk Ilmu Data
Meskipun distribusi open source Python mungkin memuaskan bagi seorang individu, itu tidak selalu memenuhi persyaratan dukungan, keamanan, atau platform dari organisasi besar.
Inilah sebabnya mengapa organisasi memilih ActivePython untuk ilmu data, pemrosesan data besar, dan kebutuhan analisis statistik mereka
Dibundel dengan paket paling penting yang dibutuhkan Ilmuwan Data, ActivePython telah dikompilasi sebelumnya sehingga Anda dan tim Anda tidak perlu membuang waktu untuk mengonfigurasi distribusi sumber terbuka. Anda dapat fokus pada hal yang penting–menghabiskan lebih banyak waktu untuk membangun algoritme dan model prediktif terhadap sumber data besar Anda, dan lebih sedikit waktu untuk konfigurasi sistem
ActivePython 100% kompatibel dengan distribusi Python sumber terbuka, dan memberikan dukungan keamanan dan komersial yang dibutuhkan organisasi Anda
Dengan ActivePython Anda dapat menjelajahi dan memanipulasi data, menjalankan analisis statistik, dan memberikan visualisasi untuk berbagi wawasan dengan pengguna dan eksekutif bisnis Anda lebih cepat–di mana pun data Anda berada