[英]questions on multiple plots and multiple legend on python
我有以下代碼,有人可以幫助我修復它嗎? 我想在python numpy / matlab圖上有多個圖例。
import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure(1)
x0 = np.array([[1,2,2,3]])
x1 = np.array([[2,2,4,3]])
y0 = np.array([[1,6,2,7]])
y0 = np.array([[4,2,2,5]])
p1= plt.scatter(x0,x1,color='blue',s=3)
p2= plt.scatter(y0,y0,color='red',s=3)
leg = plt.legend((p1,p2),('class0','class1'),fontsize=8)
plt.show()
我希望我的下圖出現在無花果上並有自己的傳說
plt.hold(True)
z0 = np.array([[11,16,13,17]])
z1 = np.array([[13,16,12,17]])
p3 = plt.scatter(z0,z1,color='k')
plt.show()
我應該如何為p3
添加圖例?
在這里,我將所有三個散點圖放在同一圖上,其中一個圖例位於右上角,另一個圖例位於右下角。
我們可以通過向軸添加第一個圖例來顯示兩個圖例,如matplotlib圖例指南中所述 :
import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure(1)
x0 = np.array([[1,2,2,3]])
x1 = np.array([[2,2,4,3]])
y0 = np.array([[1,6,2,7]])
y0 = np.array([[4,2,2,5]])
p1= plt.scatter(x0,x1,color='blue',s=50, label='class0')
p2= plt.scatter(y0,y0,color='red',s=50, label='class1')
z0 = np.array([[11,16,13,17]])
z1 = np.array([[13,16,12,17]])
p3 = plt.scatter(z0,z1,color='k', s=75, label='class3')
leg = plt.legend(handles=[p1, p2], fontsize=8, loc=1)
ax = plt.gca().add_artist(leg)
plt.legend(handles=[p3], fontsize=8, loc=4)
plt.show()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.