簡體   English   中英

Python在for循環中顯示迭代圖例

[英]Python show legend for iterations in for loop

我在for循環中有一個函數。 函數輸出兩個圖yz ,分別繪制在不同的圖中。 我想創建一個圖例,其中np.arange(0,20,5)中的每個值在yz圖中都顯示為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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM