Làm thế nào để bạn vẽ một đường tuyến tính trong python?

Bạn có thể sử dụng đối số từ khóa linestyle, hoặc ngắn hơn là ls, để thay đổi kiểu của đường vẽ

Thí dụ

Sử dụng một đường chấm chấm

nhập matplotlib. pyplot dưới dạng plt
nhập numpy dưới dạng np

ypoints = np. mảng[[3, 8, 1, 10]]

plt. cốt truyện [ypoints, linestyle = 'chấm']
plt. chỉ[]

Kết quả

Tự mình thử »

Thí dụ

Sử dụng một đường đứt nét


plt. cốt truyện [ypoints, linestyle = 'dashed']

Kết quả

Tự mình thử »

Cú pháp ngắn hơn

Kiểu dòng có thể được viết bằng cú pháp ngắn hơn

linestyle có thể được viết là ls

dotted có thể được viết là :

_______ 45 _______ có thể được viết là ________ 46 _______

Kiểu đường kẻ

Bạn có thể chọn bất kỳ phong cách nào trong số này

Màu đường kẻ

Bạn có thể sử dụng đối số từ khóa color hoặc ngắn hơn là c để đặt màu cho dòng

Thí dụ

Đặt màu đường thành màu đỏ

nhập matplotlib. pyplot dưới dạng plt
nhập numpy dưới dạng np

ypoints = np. mảng[[3, 8, 1, 10]]

plt. cốt truyện [ypoints, color = 'r']
plt. chỉ[]

Kết quả

Tự mình thử »

Bạn cũng có thể sử dụng các giá trị màu thập lục phân

Thí dụ

Âm mưu với một đường màu xanh lá cây đẹp

...
plt. cốt truyện[ypoints, c = '#4CAF50']
...

Kết quả

Tự mình thử »

Hoặc bất kỳ trong số 140 tên màu được hỗ trợ

Thí dụ

Lô với màu có tên "hotpink"

...
plt. cốt truyện [ypoints, c = 'hotpink']
...

Kết quả

Tự mình thử »

Chiều rộng dòng

Bạn có thể sử dụng đối số từ khóa ls0 hoặc ngắn hơn là ls1 để thay đổi độ rộng của dòng

Giá trị là một số động, tính bằng điểm

Thí dụ

Âm mưu với 20. đường rộng 5pt

nhập matplotlib. pyplot dưới dạng plt
nhập numpy dưới dạng np

ypoints = np. mảng[[3, 8, 1, 10]]

plt. cốt truyện [ypoints, linewidth = '20. 5']
plt. chỉ[]

Kết quả

Tự mình thử »

nhiều dòng

Bạn có thể vẽ bao nhiêu dòng tùy thích bằng cách thêm nhiều hàm ls2

Thí dụ

Vẽ hai dòng bằng cách chỉ định hàm ls2 cho mỗi dòng

nhập matplotlib. pyplot dưới dạng plt
nhập numpy dưới dạng np

y1 = np. mảng[[3, 8, 1, 10]]
y2 = np. mảng[[6, 2, 7, 11]]

plt. cốt truyện[y1]
plt. cốt truyện[y2]

plt. chỉ[]

Kết quả

Tự mình thử »

Bạn cũng có thể vẽ nhiều đường bằng cách cộng các điểm cho trục x và trục y cho mỗi đường trong cùng một hàm ls2

[Trong các ví dụ trên, chúng tôi chỉ chỉ định các điểm trên trục y, nghĩa là các điểm trên trục x có các giá trị mặc định [0, 1, 2, 3]. ]

Hồi quy là một thuật toán học có giám sát được sử dụng cho các biến liên tục. Đó là mối quan hệ giữa biến phụ thuộc và biến độc lập, trong đó biến phụ thuộc là biến phản hồi được ký hiệu là “y” và biến độc lập được ký hiệu là “x”. y = mx + c. Hãy hiểu cách nó được triển khai trong Scikit learn

Trong phần này, chúng ta sẽ xem cách thư viện Python Scikit-Learn dành cho máy học có thể được sử dụng để vẽ các đường hồi quy. Chúng ta sẽ bắt đầu bằng cách tạo mô hình hồi quy tuyến tính

Matplotlib là một trong những thư viện trực quan hóa dữ liệu được sử dụng rộng rãi nhất trong Python. Từ trực quan hóa đơn giản đến phức tạp, đây là thư viện dành cho hầu hết mọi người

Trong hướng dẫn này, chúng ta sẽ xem cách vẽ biểu đồ đường trong Matplotlib - một trong những loại biểu đồ cơ bản nhất

Line Plots hiển thị các giá trị số trên một trục và các giá trị phân loại trên trục kia. Chúng thường có thể được sử dụng theo cách tương tự như cách sử dụng Biểu đồ thanh, tuy nhiên, chúng thường được sử dụng nhiều hơn để theo dõi các thay đổi theo thời gian

Vẽ một biểu đồ đường trong Matplotlib

Để vẽ biểu đồ đường trong Matplotlib, bạn sử dụng hàm plot[] chung từ phiên bản PyPlot. Không có hàm lineplot[] cụ thể - hàm chung sẽ tự động vẽ đồ thị bằng cách sử dụng các đường kẻ hoặc điểm đánh dấu

Hãy tạo tập dữ liệu nhỏ của riêng chúng ta để làm việc với

import matplotlib.pyplot as plt

x = [1, 2, 3, 4, 5, 6]
y = [1, 5, 3, 5, 7, 8]

plt.plot[x, y]
plt.show[]

Điều này dẫn đến một biểu đồ dòng đơn giản

Ngoài ra, chúng ta có thể bỏ qua hoàn toàn trục x và chỉ vẽ đồ thị

import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]

plt.plot[y]
plt.show[]
0. Điều này sẽ dẫn đến trục X được lấp đầy bằng
import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]

plt.plot[y]
plt.show[]
1

import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]

plt.plot[y]
plt.show[]

Điều này dẫn đến nhiều biểu đồ đường giống như trước đây, vì các giá trị của x được suy ra

Điều này dẫn đến nhiều biểu đồ đường giống như trước đây, vì các giá trị của x được suy ra. Các giá trị x, cho dù chúng tôi suy luận hay đặt thủ công, như trong ví dụ đầu tiên, đều có cùng hình dạng với

import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]

plt.plot[y]
plt.show[]
0. Nếu
import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]

plt.plot[y]
plt.show[]
0 có 10 giá trị, thì x cũng vậy

Tuy nhiên, chúng tôi có thể thay đổi hành vi này và vượt quá phạm vi đó, trong trường hợp đó, các giá trị

import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]

plt.plot[y]
plt.show[]
0 sẽ được ánh xạ tới các giá trị đó thay thế

import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]
x = [10, 20, 30, 40, 50, 60]

plt.plot[x, y]
plt.show[]

Kết quả này trong

Cho đến nay, chúng tôi đã xử lý các giá trị x thống nhất. Hãy xem điều gì sẽ xảy ra nếu chúng ta thay đổi phân phối

________số 8_______

Một vài giá trị đầu tiên đặt tỷ lệ. Và

import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]
x = [10, 20, 30, 40, 50, 60]

plt.plot[x, y]
plt.show[]
0 như thường lệ, được ánh xạ tới
import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]
x = [10, 20, 30, 40, 50, 60]

plt.plot[x, y]
plt.show[]
1. Tuy nhiên, vì
import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]
x = [10, 20, 30, 40, 50, 60]

plt.plot[x, y]
plt.show[]
2 nhảy vào từ hư không, nên không thể ánh xạ trực tiếp
import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]
x = [10, 20, 30, 40, 50, 60]

plt.plot[x, y]
plt.show[]
3 vào nó

Trục X duy trì tỷ lệ thống nhất của nó và thêm một loạt các giá trị còn thiếu từ

import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]
x = [10, 20, 30, 40, 50, 60]

plt.plot[x, y]
plt.show[]
4, sau đó, nó ánh xạ
import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]
x = [10, 20, 30, 40, 50, 60]

plt.plot[x, y]
plt.show[]
3 đến
import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]
x = [10, 20, 30, 40, 50, 60]

plt.plot[x, y]
plt.show[]
2, dẫn đến một đường thẳng từ
import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]
x = [10, 20, 30, 40, 50, 60]

plt.plot[x, y]
plt.show[]
7 trên trục Y

Vẽ một đường Vẽ lôgarit trong Matplotlib

Khi xử lý các bộ dữ liệu có số lượng lớn hơn dần dần và đặc biệt nếu phân phối của chúng nghiêng về phía hàm mũ, thì việc vẽ một biểu đồ đường theo thang logarit là điều phổ biến

Thay vì trục Y là tuyến tính đồng nhất, điều này sẽ thay đổi mỗi khoảng thời gian lớn hơn theo cấp số nhân so với khoảng thời gian trước

Điều này dẫn đến các hàm số mũ về cơ bản được vẽ dưới dạng các đường thẳng. Khi xử lý loại dữ liệu này, thật khó để suy nghĩ của bạn về các số mũ và bạn có thể làm cho nó trực quan hơn nhiều bằng cách vẽ biểu đồ dữ liệu theo logarit

Hãy sử dụng Numpy để tạo hàm mũ và vẽ đồ thị tuyến tính, giống như chúng ta đã làm trước đây

Hãy xem hướng dẫn thực hành, thực tế của chúng tôi để học Git, với các phương pháp hay nhất, tiêu chuẩn được ngành chấp nhận và bao gồm bảng gian lận. Dừng các lệnh Git trên Google và thực sự tìm hiểu nó

Thao tác này tạo ra một mảng có độ dài 10 và chứa các giá trị trong khoảng từ

import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]
x = [10, 20, 30, 40, 50, 60]

plt.plot[x, y]
plt.show[]
8. Sau đó, chúng tôi đã sử dụng hàm
import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]
x = [10, 20, 30, 40, 50, 60]

plt.plot[x, y]
plt.show[]
9 từ Numpy để tính các giá trị hàm mũ của các phần tử này, dẫn đến một hàm mũ trên thang tuyến tính

Loại chức năng này, mặc dù đơn giản, nhưng con người khó khái niệm hóa và những thay đổi nhỏ có thể dễ dàng không được chú ý khi xử lý các tập dữ liệu lớn

Bây giờ, hãy thay đổi tỷ lệ của trục Y thành logarit

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace[0, 5, 10]
y = np.exp[x]

plt.yscale['log']
plt.plot[x, y]
plt.show[]

Sử dụng phiên bản PyPlot,

import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]
x = [1, 2, 3, 4, 5, 20]

plt.plot[x, y]
plt.show[]
0, chúng ta có thể đặt tỷ lệ của trục X và Y. Ở đây, chúng tôi đã đặt Trục Y theo thang logarit, thông qua hàm
import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]
x = [1, 2, 3, 4, 5, 20]

plt.plot[x, y]
plt.show[]
1

Ở đây, chúng ta cũng có thể sử dụng

import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]
x = [1, 2, 3, 4, 5, 20]

plt.plot[x, y]
plt.show[]
2,
import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]
x = [1, 2, 3, 4, 5, 20]

plt.plot[x, y]
plt.show[]
3,
import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]
x = [1, 2, 3, 4, 5, 20]

plt.plot[x, y]
plt.show[]
4 và
import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]
x = [1, 2, 3, 4, 5, 20]

plt.plot[x, y]
plt.show[]
5. Mặc định là
import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]
x = [1, 2, 3, 4, 5, 20]

plt.plot[x, y]
plt.show[]
2

Chạy mã này dẫn đến

Tùy chỉnh các ô đường trong Matplotlib

Bạn có thể dễ dàng tùy chỉnh Biểu đồ đường thông thường bằng cách chuyển đối số cho hàm plot[]

Đây thường sẽ là các đối số như

import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]
x = [1, 2, 3, 4, 5, 20]

plt.plot[x, y]
plt.show[]
8,
import matplotlib.pyplot as plt
y = [1, 5, 3, 5, 7, 8]
x = [1, 2, 3, 4, 5, 20]

plt.plot[x, y]
plt.show[]
9 hoặc
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace[0, 5, 10]
y = np.exp[x]

plt.yscale['log']
plt.plot[x, y]
plt.show[]
0

import matplotlib.pyplot as plt
import numpy as np

x = np.random.randint[low=1, high=10, size=25]

plt.plot[x, color = 'blue', linewidth=3, linestyle='dashed']
plt.show[]

Kết quả này trong

Thay vì giá trị

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace[0, 5, 10]
y = np.exp[x]

plt.yscale['log']
plt.plot[x, y]
plt.show[]
1, chúng ta có thể sử dụng
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace[0, 5, 10]
y = np.exp[x]

plt.yscale['log']
plt.plot[x, y]
plt.show[]
2 hoặc
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace[0, 5, 10]
y = np.exp[x]

plt.yscale['log']
plt.plot[x, y]
plt.show[]
3 chẳng hạn. Mặc dù vậy, chúng tôi cũng có thể sử dụng các ký tự đặc biệt như
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace[0, 5, 10]
y = np.exp[x]

plt.yscale['log']
plt.plot[x, y]
plt.show[]
4,
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace[0, 5, 10]
y = np.exp[x]

plt.yscale['log']
plt.plot[x, y]
plt.show[]
5,
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace[0, 5, 10]
y = np.exp[x]

plt.yscale['log']
plt.plot[x, y]
plt.show[]
6 và
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace[0, 5, 10]
y = np.exp[x]

plt.yscale['log']
plt.plot[x, y]
plt.show[]
7

import matplotlib.pyplot as plt
import numpy as np

x = np.random.randint[low=1, high=10, size=25]

plt.plot[x, color = 'blue', linewidth=3, linestyle='-.']
plt.show[]

Kết quả này trong

Có rất nhiều kiểu đường kẻ

Phần kết luận

Trong hướng dẫn này, chúng ta đã tìm hiểu một số cách để vẽ Biểu đồ đường bằng Matplotlib và Python. Chúng tôi cũng đã đề cập đến cách vẽ biểu đồ theo thang logarit, cũng như cách tùy chỉnh biểu đồ đường của chúng tôi

Nếu bạn quan tâm đến Trực quan hóa dữ liệu và không biết bắt đầu từ đâu, hãy nhớ xem gói sách của chúng tôi về Trực quan hóa dữ liệu trong Python

Trực quan hóa dữ liệu bằng Python với Matplotlib và Pandas là một cuốn sách được thiết kế dành cho những người mới bắt đầu làm quen với Pandas và Matplotlib, với kiến ​​thức cơ bản về Python và cho phép họ xây dựng nền tảng vững chắc để làm việc nâng cao với các thư viện luận văn - từ các biểu đồ đơn giản đến các biểu đồ 3D hoạt hình có tính tương tác

Nó phục vụ như một hướng dẫn chuyên sâu, sẽ dạy cho bạn mọi thứ bạn cần biết về Pandas và Matplotlib, bao gồm cả cách xây dựng các loại cốt truyện không được tích hợp sẵn trong thư viện

Trực quan hóa dữ liệu trong Python, một cuốn sách dành cho các nhà phát triển Python từ sơ cấp đến trung cấp, hướng dẫn bạn cách thao tác dữ liệu đơn giản với Pandas, bao gồm các thư viện vẽ đồ thị cốt lõi như Matplotlib và Seaborn, đồng thời chỉ cho bạn cách tận dụng các thư viện thử nghiệm và khai báo như Altair. Cụ thể hơn, trong khoảng 11 chương, cuốn sách này bao gồm 9 thư viện Python. Pandas, Matplotlib, Seaborn, Bokeh, Altair, Plotly, GGPlot, GeoPandas và VisPy

Nó phục vụ như một hướng dẫn thực tế, độc đáo về Trực quan hóa dữ liệu, trong rất nhiều công cụ bạn có thể sử dụng trong sự nghiệp của mình

Chủ Đề