Hướng dẫn how to add legend to scatter plot in python - cách thêm chú giải để phân tán âm mưu trong python

Ghi chú

Nhấn vào đây để tải xuống mã ví dụ đầy đủhere to download the full example code

Để tạo một biểu đồ phân tán với một huyền thoại, người ta có thể sử dụng một vòng lặp và tạo một biểu đồ scatter cho mỗi mục để xuất hiện trong truyền thuyết và đặt label phù hợp.

Sau đây cũng cho thấy mức độ minh bạch của các điểm đánh dấu có thể được điều chỉnh bằng cách cho alpha giá trị từ 0 đến 1.

import numpy as np import matplotlib.pyplot as plt np.random.seed(19680801) fig, ax = plt.subplots() for color in ['tab:blue', 'tab:orange', 'tab:green']: n = 750 x, y = np.random.rand(2, n) scale = 200.0 * np.random.rand(n) ax.scatter(x, y, c=color, s=scale, label=color, alpha=0.3, edgecolors='none') ax.legend() ax.grid(True) plt.show()

Tạo huyền thoại tự động#

Một tùy chọn khác để tạo một huyền thoại cho một phân tán là sử dụng phương thức PathCollection.legend_elements. Nó sẽ tự động cố gắng xác định một số lượng hữu ích của các mục nhập huyền thoại sẽ được hiển thị và trả về một bộ xử lý và nhãn. Những điều đó có thể được chuyển đến cuộc gọi đến legend.

N = 45 x, y = np.random.rand(2, N) c = np.random.randint(1, 5, size=N) s = np.random.randint(10, 220, size=N) fig, ax = plt.subplots() scatter = ax.scatter(x, y, c=c, s=s) # produce a legend with the unique colors from the scatter legend1 = ax.legend(*scatter.legend_elements(), loc="lower left", title="Classes") ax.add_artist(legend1) # produce a legend with a cross section of sizes from the scatter handles, labels = scatter.legend_elements(prop="sizes", alpha=0.6) legend2 = ax.legend(handles, labels, loc="upper right", title="Sizes") plt.show()

Các đối số tiếp theo cho phương thức PathCollection.legend_elements có thể được sử dụng để điều khiển số lượng mục nhập huyền thoại sẽ được tạo và cách chúng nên được dán nhãn. Sau đây cho thấy cách sử dụng một số trong số họ.

volume = np.random.rayleigh(27, size=40) amount = np.random.poisson(10, size=40) ranking = np.random.normal(size=40) price = np.random.uniform(1, 10, size=40) fig, ax = plt.subplots() # Because the price is much too small when being provided as size for ``s``, # we normalize it to some useful point sizes, s=0.3*(price*3)**2 scatter = ax.scatter(volume, amount, c=ranking, s=0.3*(price*3)**2, vmin=-3, vmax=3, cmap="Spectral") # Produce a legend for the ranking (colors). Even though there are 40 different # rankings, we only want to show 5 of them in the legend. legend1 = ax.legend(*scatter.legend_elements(num=5), loc="upper left", title="Ranking") ax.add_artist(legend1) # Produce a legend for the price (sizes). Because we want to show the prices # in dollars, we use the *func* argument to supply the inverse of the function # used to calculate the sizes from above. The *fmt* ensures to show the price # in dollars. Note how we target at 5 elements here, but obtain only 4 in the # created legend due to the automatic round prices that are chosen for us. kw = dict(prop="sizes", num=5, color=scatter.cmap(0.7), fmt="$ {x:.2f}", func=lambda s: np.sqrt(s/.3)/3) legend2 = ax.legend(*scatter.legend_elements(**kw), loc="lower right", title="Price") plt.show()

Tổng thời gian chạy của tập lệnh: (0 phút 1.840 giây) ( 0 minutes 1.840 seconds)

Phòng trưng bày được tạo ra bởi Sphinx-Gallery

Làm thế nào để bạn thêm một huyền thoại vào một cốt truyện phân tán trong Python?

Tạo điểm dữ liệu x và y; Tạo danh sách điểm dữ liệu Z1 và Z2. Thêm một subplot vào hình hiện tại, với trình chiếu = '3D'. Vẽ các điểm dữ liệu X, Y và Z1 bằng các điểm PLOT () trên các trục 2D, với điểm đánh dấu *. Vẽ các điểm dữ liệu X, Y và Z2 bằng các điểm PLOT () trên các trục 2D, với điểm đánh dấu o.

Làm thế nào để bạn thêm một huyền thoại vào một âm mưu gấu trúc?

Khóa học gấu trúc cho người bắt đầu: Numpy + gấu trúc + matplotlib..
Tạo một từ điển D với các phím Cột1 và cột2 ..
Tạo khung dữ liệu bằng cách sử dụng DataFrame (D) ..
Vẽ khung dữ liệu với danh sách các kiểu ..
Sử dụng Legend (), đặt một huyền thoại vào hình.....
Để hiển thị hình, hãy sử dụng phương thức show () ..

Làm thế nào để bạn thêm một tiêu đề và truyền thuyết vào một cốt truyện trong Python?

Trong ví dụ này, chúng tôi sẽ vẽ các dòng khác nhau với sự trợ giúp của matplotlib và sử dụng đối số tiêu đề cho PLT.Legend () để chỉ định tiêu đề huyền thoại ...
Nhập mô -đun yêu cầu ..
Tạo dữ liệu ..
Thêm một tiêu đề vào một huyền thoại ..
Thông thường vẽ dữ liệu ..
Hiển thị âm mưu ..

Làm cách nào để hiển thị một huyền thoại trong matplotlib?

Matplotlib với Python đặt kích thước hình và điều chỉnh phần đệm giữa và xung quanh các ô con.Sử dụng phương thức PLOT (), các dòng vẽ với nhãn LINE1, line2 và line3.Đặt một huyền thoại trên hình bằng phương thức Legend (), với số lượng nhãn cho giá trị NCOL trong đối số.Để hiển thị hình, sử dụng phương thức show ().use show() method.

Chủ đề