d = d + 1在没有for循环的函数内部(python)

时间:2019-02-09 05:00:34

标签: python function matplotlib

所以我试图用python创建一个简单的程序,该程序使用matplotlib绘制一些数据。问题是我需要x轴每次迭代增加一个。我的代码如下:

import matplotlib.pyplot as plt
%matplotlib inline
d = -1
money = 40
def test ():
    for testing in range (5)
    ...
    ...
    ...
   plot(d,money)

def plot(d,money):
    d = d  + 1
   plt.plot(d, money, 'o')

代码可以工作,但是它在x轴的0处绘制所有数据点,在这里我希望将第一个点绘制为0,第二个点绘制为1,依此类推。

提前感谢您的时间和帮助。

编辑:基本上,我需要一种方法,以使在每个循环中d都不会重置为-1,而是将其增加1

2 个答案:

答案 0 :(得分:0)

您可以考虑使用两个列表,将这些值附加到这些列表中,然后最终像这样绘制它们

def test():
    d = -1
    money = 40
    d_list = []
    money_list = []

    for test in range (5):
        ...
        d = d + 1
        d_list.append(d)
        money_list.append(money)
    plt.plot(d_list, money_list)

答案 1 :(得分:0)

如果您知道要如何增加图形,可以考虑使用arange而不是循环。如

Import numpy as np
Import matplotlib.pyplot as plot

money = np.full(5, 40)
R = np.arange(0, 5, 1)

plot.plot(R, money)