[英]Python show legend for iterations in for loop
我在for循環中有一個函數。 函數輸出兩個圖y
和z
,分別繪制在不同的圖中。 我想創建一個圖例,其中np.arange(0,20,5)
中的每個值在y
和z
圖中都顯示為c = XXX
,其中XXX是for循環內使用的c
。
import numpy as np
import matplotlib.pyplot as plt
def functions(c,x):
y = c*x
z = 0.5*c*x**2
return y,z
fig1 = plt.figure()
ax1 = fig1.add_subplot(111)
fig2 = plt.figure()
ax2 = fig2.add_subplot(111)
x = np.arange(-5,5)
for c in np.arange(0,20,5):
y,z = functions(c,x)
ax1.plot(x, y, lw=2, label='')
ax2.plot(x, z, lw=2, label='')
ax1.set_xlabel('x', fontsize=16)
ax1.set_ylabel('y', fontsize=16)
ax2.set_xlabel('x', fontsize=16)
ax2.set_ylabel('z', fontsize=16)
plt.show()
在將每個值繪制為新行時,只需將標簽設置為c值:
label = '%s'%c, ...
這意味着當您添加圖例時
ax2.legend()
它將顯示其中的所有c值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.