1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Lập trình cho khoa học dữ liệu - Bài 8: Thư viện matplotlib

27 36 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 27
Dung lượng 1,2 MB

Nội dung

Bài giảng Lập trình cho khoa học dữ liệu - Bài 8: Thư viện matplotlib cung cấp cho người học những kiến thức như: Giới thiệu vàcài đặt matplotlib; Vẽ biểu đồ đơn giản; Một số loại biểu đồ trong matplotlib; Bài tập. Mời các bạn cùng tham khảo!

LOGO LẬPTRÌNH CHO KHOA HỌC DỮ LIỆU Bài Thư viện matplotlib Nội dung Giới thiệu cài đặt matplotlib Vẽbiểu đồ đơn giản Mộtsố loại biểu đồ matplotlib Bài tập Giới thiệu matplotlib ▪ “matplotlib”là thư viện chuyên vẽ biểu đồ, mở rộng từ numpy ▪ Có mục tiêu đơn giản hóa tối đa công việc vẽbiểu đồ để “chỉ cần vài dònglệnh” ▪ Hỗ trợ nhiều loại biểu đồ, đặc biệt loại sử dụng nghiên cứu kinh tế biểu đồ dòng, đường, tần suất (histograms),phổ, tương quan, errorcharts, scatterplots,… ▪ Cấu trúc matplotlib gồm nhiều phần, phục vụ cho mục đích sử dụng khác Giới thiệu matplotlib ▪ Ngoài API liên quan đến vẽ biểu đồ, matplotlib bao gồm số interface: Object-Oriented API, The Scripting Interface (pyplot), The MATLAB Interface (pylab) ▪ Các interface giúp thuận tiện việc thiết lập số trước thực vẽ biểu đồ ▪ Interface pylab khơng cịn pháttriển ▪ Hầu hết ví dụ slide sử dụngpyplot ▪ Sửdụng Object-Oriented API trực tiếp API matplotlib cho phép can thiệp sâu vào việc vẽ biểu đồ (hầu hết project khơng có nhucầu này) Cài đặt: “pip install matplotlib” Một số biểu đồ vẽ matplotlib Một số biểu đồ vẽ matplotlib Một số biểu đồ vẽ matplotlib Vẽ biểu đồ đơn giản Ví dụ: vẽ biểu đồ y = x2 import numpy as np import matplotlib.pyplot as p l t # thư viện numpy # thư viện pyplot # chia đoạn từ -20 đến 20 thành 1000 đoạn x = np.linspace(-20, 20, 1000) # tính y y =x * x # vẽ biểu đồ tương quan x y p l t p l o t ( x , y) # hiển t h ị biểu đồ plt.show() Vẽ biểu đồ đơn giản Ví dụ: vẽ biểu đồ hình sin import numpy as np import matplotlib.pyplot as p l t # thư viện numpy # thư viện pyplot # chia đoạn từ đến 3 thành đoạn 0.1 x = np.arange(0, * np.pi, 0.1) # tính sin tương ứng với phần tử x y = np.sin(x) # vẽ biểu đồ tương quan x y p l t p l o t ( x , y) # hiển t h ị biểu đồ plt.show() 10 Vẽ biểu đồ đơn giản Các bước vẽ biểu đồ với matplotlib ▪ Điều kiện cần: có sẵn liệu ▪ Có thể có bước bản: Chọn loại biểu đồ phù hợp • Tùy thuộc nhiều vào loại dữliệu • Tùy thuộc vào mục đích sử dụng người dùng Thiết lập thông số cho biểu đồ • Thơng số trục, ý nghĩa, tỉ lệ chia,… • Các điểm nhấn đồ • Góc nhìn, mẫu tơ, màu chi tiết khác • Các thông tin bổ sung 13 Vẽ biểu đồ Lưu file Một số loại biểu đồ matplotlib Line plot ▪ Biểu đồ thể tương quan Xvà Y ▪ Cú pháp: ▪ plot([x], y, [fmt], data=None,**kwargs) ▪ plot([x], y, [fmt], [x2], y2, [fmt2], , **kwargs) ▪ “fmt” quy cách vẽđường ▪ “data” nhãn liệu ▪ **kwargs: tham số vẽ đường ▪ Vẽ nhiều lần biểuđồ ▪ Kết trả listcác đối tượng Line2D 14 Một số loại biểu đồ matplotlib Line plot ▪ “fmt” gồm phần fmt = '[color][marker][line]‘ ▪ [color] – viết tắt tênmàu: ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ 15 ‘b’ – blue ‘g’ – green ‘r’ –red ‘c’ – cyan ‘m’ – magenta ‘y’ –yellow ‘b’ – black ‘w’ –white #rrggbb – mã màu theo hệRGB Một số loại biểu đồ matplotlib Line plot ▪ [marker] – cách đánh dấu liệu: ▪ ▪ ▪ ▪ ▪ ▪ ‘o’ – hình trịn ‘v’ – tam giác xuống (‘^’, ‘’) ‘*’ – ngôisao ‘.’ – chấm ‘p’ – ngũ giác … ▪ [line] – cách vẽ đường: ▪ ▪ ▪ ▪ 16 ‘-’ – nét liền ‘ ‘ – nét đứt ‘-.’ – gạch chấm ‘:’ – đường chấm Một số loại biểu đồ matplotlib Line plot import numpy as np import matplotlib.pyplot as p l t # chia đoạn 0-5 thành bước 0.2 t = np.arange(0., , 0.2) # Vẽ đường: # - màu đỏ nét đứt: y = x # - màu xanh dương, đánh dấu ô vuông: y = x^2 # - màu xanh l , đánh dấu tam giác: y = x^3 plt.plot(t, t , ' r - - ' , t , t**2, ' b s ' , t , t**3, ' g ^ ' ) plt.show() 17 Một số loại biểu đồ matplotlib Biểu đồ dạng cột (bar plot) import matplotlib.pyplot as p l t D= { 'CTTT': 60, 'Kế toán': 310, 'Kinh t ế ' : 360, 'CNTT': 580, 'Cơ k h í ' : 340, 'Thủy văn': 290 } plt.bar(range(len(D)), D.values(), align='center') plt.xticks(range(len(D)), D.keys()) p l t t i t l e ( ' C c ngành tuyển sinh Đại học Thủy Lợi') plt.show() 18 Một số loại biểu đồ matplotlib Biểu đồ dạng cột (bar plot) import matplotlib.pyplot as p l t D= { 'CTTT': 60, 'Kế toán': 310, 'Kinh t ế ' : 360, 'CNTT': 580, 'Cơ k h í ' : 340, 'Thủy văn': 290 } plt.barh(range(len(D)), list(D.values())) plt.yticks(range(len(D)), D.keys()) p l t t i t l e ( ' C c ngành tuyển sinh Đại học Thủy Lợi') plt.show() 19 Một số loại biểu đồ matplotlib Biểu đồ dạng cột (bar plot) import matplotlib.pyplot as p l t plt.bar([1,3,5,7,9],[5,2,7,8,2], label="One") plt.bar([2,4,6,8,10],[8,6,2,5,6], label="Two", color='g') plt.legend() plt.xlabel('bar number') plt.ylabel('bar height') plt.title('Ghép biểu đồ') plt.show() 20 Một số loại biểu đồ matplotlib Biểu đồ bánh (pie chart) import matplotlib.pyplot as p l t D= { 'CTTT': 60, 'Kế toán': 310, 'Kinh t ế ' : 360, 'CNTT': 580, 'Cơ k h í ' : 340, 'Thủy văn': 290 } plt.pie(D.values(), labels=D.keys(), autopct='%1.1f%%') plt.axis('equal') # trục x = trục y plt.show() 21 Một số chức hữu ích Chia thành biểu đồ import numpy as np import matplotlib.pyplot as p l t x = np.arange(0, * np.pi, 0.1) y_sin = np.sin(x) y_cos = np.cos(x) plt.subplot(2, 1, 1) p l t p l o t ( x , y_sin) plt.title('SIN(x)') plt.subplot(2, 1, 2) p l t p l o t ( x , y_cos) plt.title('COS(x)') plt.show() 22 # biểu đồ # biểu đồ Một số chức hữu ích Chia thành biểu đồ import numpy as np import matplotlib.pyplot as p l t x1 x2 y1 y2 = np.linspace(0.0, = np.linspace(0.0, = np.cos(2 * np.pi = np.cos(2 * np.pi plt.subplot(2, 1, 1) plt.plot(x1, y1, ' o - ' ) plt.subplot(2, 1, 2) plt.plot(x2, y2, ' - ' ) plt.show() 23 5.0) 2.0) * x1) * np.exp(-x1) * x2) Một số chức hữu ích Chia thành biểu đồ import matplot lib.pyplot as p l t import numpy as np np.random.seed (19680801) data = np.rand om.randn(2, 100) f i g , axs = p l t subplots(2, 2, figsize=(5, 5)) axs[0, 0].hist (data[0]) axs[1, 0].scat ter(data[0], data[1]) axs[0, 1].plot (data[0], data[1]) axs[1, 1].hist 2d(data[0], data[1]) plt.show() 24 Một số chức hữu ích Nén ảnh import matplotlib.pyplot as p l t import matplotlib.image as mpimg image = mpimg.imread("txnam.png") f i g , axs = plt.subplots(2, 2, figsize=(5, 5)) axs[0, axs[1, axs[0, axs[1, 0].imshow(image) 0].imshow(image) 1].imshow(image) 1].imshow(image) plt.show() 25 Một số chức hữu ích Lưu biểu đồ file import matplotlib.pyplot as p l t import matplotlib.image as mpimg image = mpimg.imread("txnam.png") f i g , axs = plt.subplots(2, 2, figsize=(5, 5)) axs[0, 0].imshow(image) axs[1, 0].imshow(image) axs[0, 1].imshow(image) axs[1, 1].imshow(image) plt.savefi g ('1.png') plt.savefi g ('1.pdf' ) 26 LOGO ...Nội dung Giới thiệu cài đặt matplotlib Vẽbiểu đồ đơn giản Mộtsố loại biểu đồ matplotlib Bài tập Giới thiệu matplotlib ▪ ? ?matplotlib? ??là thư viện chuyên vẽ biểu đồ, mở rộng từ numpy... import numpy as np import matplotlib. pyplot as p l t # thư viện numpy # thư viện pyplot # chia đoạn từ -2 0 đến 20 thành 1000 đoạn x = np.linspace (-2 0, 20, 1000) # tính y y =x * x # vẽ biểu đồ tương... với matplotlib ▪ Điều kiện cần: có sẵn liệu ▪ Có thể có bước bản: Chọn loại biểu đồ phù hợp • Tùy thuộc nhiều vào loại d? ?liệu • Tùy thuộc vào mục đích sử dụng người dùng Thiết lập thông số cho

Ngày đăng: 09/08/2021, 18:00

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w