Làm thế nào để bạn vẽ dữ liệu trong danh sách python?
plt.plot([1, 2, 3, 4], [1, 4, 9, 16])7 là tập hợp các hàm giúp matplotlib hoạt động như MATLAB. Mỗi hàm plt.plot([1, 2, 3, 4], [1, 4, 9, 16])8 thực hiện một số thay đổi đối với một hình. e. g. , tạo hình, tạo vùng vẽ trong hình, vẽ một số đường trong vùng vẽ, trang trí ô bằng nhãn, v.v. Show
Trong Ghi chú API pyplot ngầm thường ít dài dòng hơn nhưng cũng không linh hoạt bằng API rõ ràng. Hầu hết các lệnh gọi hàm mà bạn thấy ở đây cũng có thể được gọi là các phương thức từ một đối tượng plt.plot([1, 2, 3, 4], [1, 4, 9, 16], 'ro') plt.axis([0, 6, 0, 20]) plt.show()0. Chúng tôi khuyên bạn nên duyệt các hướng dẫn và ví dụ để xem cách thức hoạt động của nó. Xem Giao diện ứng dụng Matplotlib (API) để biết giải thích về sự đánh đổi của các API người dùng được hỗ trợ. Tạo trực quan hóa với pyplot rất nhanh import matplotlib.pyplot as plt plt.plot([1, 2, 3, 4]) plt.ylabel('some numbers') plt.show() Bạn có thể thắc mắc tại sao trục x nằm trong khoảng từ 0-3 và trục y từ 1-4. Nếu bạn cung cấp một danh sách hoặc mảng cho plt.plot([1, 2, 3, 4], [1, 4, 9, 16], 'ro') plt.axis([0, 6, 0, 20]) plt.show()1, matplotlib sẽ giả định rằng đó là một chuỗi các giá trị y và tự động tạo các giá trị x cho bạn. Vì phạm vi python bắt đầu bằng 0, nên vectơ x mặc định có cùng độ dài với y nhưng bắt đầu bằng 0. Do đó dữ liệu x là plt.plot([1, 2, 3, 4], [1, 4, 9, 16], 'ro') plt.axis([0, 6, 0, 20]) plt.show()2 plt.plot([1, 2, 3, 4], [1, 4, 9, 16], 'ro') plt.axis([0, 6, 0, 20]) plt.show()1 là một hàm linh hoạt và sẽ nhận một số đối số tùy ý. Ví dụ, để vẽ đồ thị x so với y, bạn có thể viết plt.plot([1, 2, 3, 4], [1, 4, 9, 16]) Định dạng kiểu cốt truyện của bạn#Đối với mỗi cặp đối số x, y, có một đối số thứ ba tùy chọn là chuỗi định dạng cho biết màu và loại đường của biểu đồ. Các chữ cái và ký hiệu của chuỗi định dạng là từ MATLAB và bạn nối một chuỗi màu với một chuỗi kiểu đường kẻ. Chuỗi định dạng mặc định là 'b-', là một đường liền màu xanh lam. Ví dụ: để vẽ biểu đồ ở trên bằng các vòng tròn màu đỏ, bạn sẽ đưa ra plt.plot([1, 2, 3, 4], [1, 4, 9, 16], 'ro') plt.axis([0, 6, 0, 20]) plt.show() Xem tài liệu plt.plot([1, 2, 3, 4], [1, 4, 9, 16], 'ro') plt.axis([0, 6, 0, 20]) plt.show()1 để biết danh sách đầy đủ các kiểu đường kẻ và chuỗi định dạng. Hàm plt.plot([1, 2, 3, 4], [1, 4, 9, 16], 'ro') plt.axis([0, 6, 0, 20]) plt.show()5 trong ví dụ trên lấy danh sách plt.plot([1, 2, 3, 4], [1, 4, 9, 16], 'ro') plt.axis([0, 6, 0, 20]) plt.show()6 và chỉ định chế độ xem của các trục Nếu matplotlib bị giới hạn làm việc với các danh sách, thì nó sẽ khá vô dụng đối với việc xử lý số. Nói chung, bạn sẽ sử dụng mảng có nhiều mảng. Trên thực tế, tất cả các chuỗi được chuyển đổi thành mảng có nhiều mảng bên trong. Ví dụ dưới đây minh họa việc vẽ một số dòng với các kiểu định dạng khác nhau trong một lệnh gọi hàm sử dụng mảng plt.plot([1, 2, 3, 4], [1, 4, 9, 16])3 Vẽ đồ thị với chuỗi từ khóa#Có một số trường hợp bạn có dữ liệu ở định dạng cho phép bạn truy cập các biến cụ thể bằng chuỗi. Ví dụ: với plt.plot([1, 2, 3, 4], [1, 4, 9, 16], 'ro') plt.axis([0, 6, 0, 20]) plt.show()7 hoặc plt.plot([1, 2, 3, 4], [1, 4, 9, 16], 'ro') plt.axis([0, 6, 0, 20]) plt.show()8 Matplotlib cho phép bạn cung cấp một đối tượng như vậy với đối số từ khóa plt.plot([1, 2, 3, 4], [1, 4, 9, 16], 'ro') plt.axis([0, 6, 0, 20]) plt.show()9. Nếu được cung cấp, thì bạn có thể tạo các ô có chuỗi tương ứng với các biến này plt.plot([1, 2, 3, 4], [1, 4, 9, 16])7 Vẽ đồ thị với các biến phân loại#Cũng có thể tạo một biểu đồ bằng cách sử dụng các biến phân loại. Matplotlib cho phép bạn chuyển trực tiếp các biến phân loại tới nhiều hàm vẽ đồ thị. Ví dụ plt.plot([1, 2, 3, 4], [1, 4, 9, 16])8 Kiểm soát thuộc tính dòng #Các dòng có nhiều thuộc tính mà bạn có thể đặt. băng thông, kiểu gạch ngang, khử răng cưa, v.v.; . Có một số cách để đặt thuộc tính dòng
Dưới đây là các tài sản plt.plot([1, 2, 3, 4], [1, 4, 9, 16])31 có sẵn Tài sản Loại giá trị chữ cái trôi nổi hoạt hình [ĐÚNG VẬY. Sai] khử răng cưa hoặc aa [ĐÚNG VẬY. Sai] clip_box một matplotlib. biến đổi. Ví dụ Bbox clip_on [ĐÚNG VẬY. Sai] clip_path một phiên bản Đường dẫn và một phiên bản Chuyển đổi, một Bản vá màu hoặc c bất kỳ màu matplotlib nào chứa chức năng kiểm tra lượt truy cập dash_capstyle [ plt.plot([1, 2, 3, 4], [1, 4, 9, 16])39. plt.plot([1, 2, 3, 4], [1, 4, 9, 16])70. plt.plot([1, 2, 3, 4], [1, 4, 9, 16])71] dash_joinstyle [ plt.plot([1, 2, 3, 4], [1, 4, 9, 16])72. plt.plot([1, 2, 3, 4], [1, 4, 9, 16])70. plt.plot([1, 2, 3, 4], [1, 4, 9, 16])74] dấu gạch ngang trình tự bật/tắt mực theo điểm dữ liệu (np. mảng xdata, np. mảng ydata) nhân vật một matplotlib. nhân vật. ví dụ hình nhãn mác bất kỳ chuỗi nào kiểu dáng hoặc ls [ plt.plot([1, 2, 3, 4], [1, 4, 9, 16])75. plt.plot([1, 2, 3, 4], [1, 4, 9, 16])76. plt.plot([1, 2, 3, 4], [1, 4, 9, 16])77. plt.plot([1, 2, 3, 4], [1, 4, 9, 16])78. plt.plot([1, 2, 3, 4], [1, 4, 9, 16])79. . ] băng thông hoặc lw giá trị float tính bằng điểm đánh dấu [ plt.plot([1, 2, 3, 4], [1, 4, 9, 16])80. plt.plot([1, 2, 3, 4], [1, 4, 9, 16])81. plt.plot([1, 2, 3, 4], [1, 4, 9, 16])82. plt.plot([1, 2, 3, 4], [1, 4, 9, 16])83. plt.plot([1, 2, 3, 4], [1, 4, 9, 16])84. plt.plot([1, 2, 3, 4], [1, 4, 9, 16])85. plt.plot([1, 2, 3, 4], [1, 4, 9, 16])86 ] markeredgecolor hoặc mec bất kỳ màu matplotlib nào markeredgewidth hoặc mew giá trị float tính bằng điểm đánh dấufacecolor hoặc mfc bất kỳ màu matplotlib nào kích thước điểm đánh dấu hoặc ms trôi nổi đánh dấu [ Không có. số nguyên. (khởi động, sải chân) ] người hái được sử dụng trong lựa chọn dòng tương tác bán kính hái bán kính lựa chọn chọn dòng solid_capstyle [ plt.plot([1, 2, 3, 4], [1, 4, 9, 16])39. plt.plot([1, 2, 3, 4], [1, 4, 9, 16])70. plt.plot([1, 2, 3, 4], [1, 4, 9, 16])71] solid_joinstyle [ plt.plot([1, 2, 3, 4], [1, 4, 9, 16])72. plt.plot([1, 2, 3, 4], [1, 4, 9, 16])70. plt.plot([1, 2, 3, 4], [1, 4, 9, 16])74] biến đổi một matplotlib. biến đổi. Ví dụ chuyển đổi có thể nhìn thấy [ĐÚNG VẬY. Sai] xdữ liệu np. mảng ydata np. mảng thứ tự bất kỳ số nào Để có danh sách các thuộc tính đường có thể thiết lập, hãy gọi hàm plt.plot([1, 2, 3, 4], [1, 4, 9, 16])36 với một hoặc nhiều đường làm đối số plt.plot([1, 2, 3, 4], [1, 4, 9, 16], 'ro') plt.axis([0, 6, 0, 20]) plt.show()6 Làm việc với nhiều hình và trục#MATLAB, và plt.plot([1, 2, 3, 4], [1, 4, 9, 16])8, có khái niệm về hình hiện tại và các trục hiện tại. Tất cả các chức năng vẽ đồ thị áp dụng cho các trục hiện tại. Hàm plt.plot([1, 2, 3, 4], [1, 4, 9, 16])05 trả về các trục hiện tại (đối tượng plt.plot([1, 2, 3, 4], [1, 4, 9, 16])06) và hàm plt.plot([1, 2, 3, 4], [1, 4, 9, 16])07 trả về hình hiện tại (đối tượng plt.plot([1, 2, 3, 4], [1, 4, 9, 16])08). Thông thường, bạn không phải lo lắng về điều này, vì tất cả đã được lo liệu ở hậu trường. Dưới đây là một tập lệnh để tạo hai ô con plt.plot([1, 2, 3, 4], [1, 4, 9, 16])0 Lệnh gọi plt.plot([1, 2, 3, 4], [1, 4, 9, 16])09 ở đây là tùy chọn vì một hình sẽ được tạo nếu không tồn tại, giống như một Trục sẽ được tạo (tương đương với lệnh gọi plt.plot([1, 2, 3, 4], [1, 4, 9, 16])60 rõ ràng) nếu không tồn tại. Cuộc gọi plt.plot([1, 2, 3, 4], [1, 4, 9, 16])61 chỉ định plt.plot([1, 2, 3, 4], [1, 4, 9, 16])62 trong đó plt.plot([1, 2, 3, 4], [1, 4, 9, 16])63 nằm trong khoảng từ 1 đến plt.plot([1, 2, 3, 4], [1, 4, 9, 16])64. Dấu phẩy trong cuộc gọi plt.plot([1, 2, 3, 4], [1, 4, 9, 16])61 là tùy chọn nếu plt.plot([1, 2, 3, 4], [1, 4, 9, 16])66. Vì vậy, plt.plot([1, 2, 3, 4], [1, 4, 9, 16])67 giống hệt với plt.plot([1, 2, 3, 4], [1, 4, 9, 16])68 Bạn có thể tạo số lượng ô con và trục tùy ý. Nếu bạn muốn đặt Trục theo cách thủ công, tôi. e. , không phải trên lưới hình chữ nhật, hãy sử dụng plt.plot([1, 2, 3, 4], [1, 4, 9, 16])69, cho phép bạn chỉ định vị trí là plt.plot([1, 2, 3, 4], [1, 4, 9, 16])90 trong đó tất cả các giá trị nằm trong tọa độ phân số (0 đến 1). Xem Trình diễn trục để biết ví dụ về cách đặt trục theo cách thủ công và Nhiều ô con để biết . Bạn có thể tạo nhiều hình bằng cách sử dụng nhiều cuộc gọi plt.plot([1, 2, 3, 4], [1, 4, 9, 16])09 với số hình tăng dần. Tất nhiên, mỗi hình có thể chứa bao nhiêu trục và ô phụ tùy ý bạn muốn plt.plot([1, 2, 3, 4], [1, 4, 9, 16])1 Bạn có thể xóa hình hiện tại bằng plt.plot([1, 2, 3, 4], [1, 4, 9, 16])92 và các trục hiện tại bằng plt.plot([1, 2, 3, 4], [1, 4, 9, 16])93. Nếu bạn cảm thấy khó chịu khi các trạng thái (cụ thể là hình ảnh, hình và trục hiện tại) đang được duy trì ở hậu trường cho bạn, đừng tuyệt vọng. đây chỉ là một trình bao bọc trạng thái mỏng bao quanh một API hướng đối tượng mà bạn có thể sử dụng thay thế (xem Hướng dẫn dành cho nghệ sĩ ) Nếu bạn đang tạo ra nhiều số liệu, bạn cần lưu ý một điều nữa. bộ nhớ cần thiết cho một hình không được giải phóng hoàn toàn cho đến khi hình được đóng rõ ràng bằng plt.plot([1, 2, 3, 4], [1, 4, 9, 16])94. Xóa tất cả các tham chiếu đến hình và/hoặc sử dụng trình quản lý cửa sổ để tắt cửa sổ mà hình xuất hiện trên màn hình là không đủ, vì pyplot duy trì các tham chiếu bên trong cho đến khi plt.plot([1, 2, 3, 4], [1, 4, 9, 16])94 được gọi Làm việc với văn bản#plt.plot([1, 2, 3, 4], [1, 4, 9, 16])96 có thể được sử dụng để thêm văn bản vào một vị trí tùy ý và plt.plot([1, 2, 3, 4], [1, 4, 9, 16])97, plt.plot([1, 2, 3, 4], [1, 4, 9, 16])98 và plt.plot([1, 2, 3, 4], [1, 4, 9, 16])99 được sử dụng để thêm văn bản vào các vị trí được chỉ định (xem Văn bản trong Ô Matplotlib for a more detailed example) plt.plot([1, 2, 3, 4], [1, 4, 9, 16])2 Tất cả các hàm plt.plot([1, 2, 3, 4], [1, 4, 9, 16])96 đều trả về một thể hiện plt.plot([1, 2, 3, 4], [1, 4, 9, 16], 'ro') plt.axis([0, 6, 0, 20]) plt.show()61. Cũng giống như các dòng trên, bạn có thể tùy chỉnh các thuộc tính bằng cách chuyển các đối số từ khóa vào các hàm văn bản hoặc sử dụng plt.plot([1, 2, 3, 4], [1, 4, 9, 16])36 plt.plot([1, 2, 3, 4], [1, 4, 9, 16])3 Các thuộc tính này được trình bày chi tiết hơn trong Các thuộc tính và bố cục văn bản . Sử dụng biểu thức toán học trong văn bản#matplotlib chấp nhận các biểu thức phương trình TeX trong bất kỳ biểu thức văn bản nào. Ví dụ: để viết biểu thức \(\sigma_i=15\) trong tiêu đề, bạn có thể viết biểu thức TeX được bao quanh bởi các ký hiệu đô la. plt.plot([1, 2, 3, 4], [1, 4, 9, 16])4 _______563 trước chuỗi tiêu đề rất quan trọng -- nó biểu thị rằng chuỗi đó là một chuỗi thô và không coi các dấu gạch chéo ngược là dấu gạch chéo ngược khi trăn thoát. matplotlib có một trình phân tích cú pháp biểu thức TeX tích hợp sẵn và công cụ bố cục, đồng thời cung cấp các phông chữ toán học của riêng nó -- để biết chi tiết, hãy xem Viết biểu thức toán học . Do đó, bạn có thể sử dụng văn bản toán học trên nhiều nền tảng mà không cần cài đặt TeX. Đối với những người đã cài đặt LaTeX và dvipng, bạn cũng có thể sử dụng LaTeX để định dạng văn bản của mình và kết hợp đầu ra trực tiếp vào số liệu hiển thị hoặc phần tái bút đã lưu -- xem Kết xuất văn bản bằng LaTeX. Chú thích văn bản#Việc sử dụng hàm plt.plot([1, 2, 3, 4], [1, 4, 9, 16])96 cơ bản ở trên đặt văn bản ở vị trí tùy ý trên Trục. Một cách sử dụng phổ biến cho văn bản là chú thích một số tính năng của cốt truyện và phương pháp plt.plot([1, 2, 3, 4], [1, 4, 9, 16], 'ro') plt.axis([0, 6, 0, 20]) plt.show()65 cung cấp chức năng trợ giúp để tạo chú thích dễ dàng. Trong một chú thích, có hai điểm cần xem xét. vị trí được chú thích được đại diện bởi đối số plt.plot([1, 2, 3, 4], [1, 4, 9, 16], 'ro') plt.axis([0, 6, 0, 20]) plt.show()66 và vị trí của văn bản plt.plot([1, 2, 3, 4], [1, 4, 9, 16], 'ro') plt.axis([0, 6, 0, 20]) plt.show()67. Cả hai đối số này đều là bộ dữ liệu plt.plot([1, 2, 3, 4], [1, 4, 9, 16], 'ro') plt.axis([0, 6, 0, 20]) plt.show()68 plt.plot([1, 2, 3, 4], [1, 4, 9, 16])5 Trong ví dụ cơ bản này, cả vị trí plt.plot([1, 2, 3, 4], [1, 4, 9, 16], 'ro') plt.axis([0, 6, 0, 20]) plt.show()66 (đầu mũi tên) và plt.plot([1, 2, 3, 4], [1, 4, 9, 16], 'ro') plt.axis([0, 6, 0, 20]) plt.show()67 (vị trí văn bản) đều nằm trong tọa độ dữ liệu. Có nhiều hệ tọa độ khác mà người ta có thể chọn -- xem Chú thích cơ bản và Chú thích nâng cao for details. More examples can be found in Chú thích ô . Các trục logarit và phi tuyến tính khác#plt.plot([1, 2, 3, 4], [1, 4, 9, 16])7 không chỉ hỗ trợ thang đo trục tuyến tính mà còn cả thang đo logarit và logit. Điều này thường được sử dụng nếu dữ liệu kéo dài nhiều bậc độ lớn. Thay đổi tỷ lệ của một trục là dễ dàng Bạn có thể vẽ đồ thị bằng Python không?Có thể vẽ đồ thị trong Python bằng cách sử dụng thư viện Matplotlib . Thư viện Matplotlib chủ yếu được sử dụng để vẽ biểu đồ. Bạn cần cài đặt matplotlib trước khi sử dụng nó để vẽ đồ thị. Matplotlib được sử dụng để vẽ một đường đơn giản, biểu đồ thanh, biểu đồ và biểu đồ hình tròn.
Bạn có thể vẽ đồ thị với NumPy không?Để vẽ đồ thị bằng Python, chúng ta sẽ sử dụng thư viện Matplotlib. Matplotlib được sử dụng cùng với dữ liệu NumPy để vẽ bất kỳ loại biểu đồ nào . Từ matplotlib, chúng tôi sử dụng chức năng cụ thể i. e. pyplot(), được sử dụng để vẽ dữ liệu hai chiều. |