0

这个 Python 程序根据 csv 文件中的数据动态绘制线条。当程序第一次启动时,它会动态地绘制文件中已经存在的点。这部分按预期工作。我希望随后绘制添加到文件中的任何新点。问题是它会i继续增加,所以当一个新项目被添加到我的 csv 文件时,它的值i通常远高于 csv 中的索引,因此它永远不会被绘制。i在 csv 文件中存在适用值之前,如何防止继续计数?

import numpy as np
from itertools import count
import pandas as pd
import matplotlib.pyplot as plt
from matplotlib.animation import FuncAnimation

plt.style.use('fivethirtyeight')

data = pd.read_csv('csv_data.csv')
x_vals = []
y_vals1 = []
y_vals2 = []

index = count()


def animate(i):
    x = data['x_value']
    y1 = data['total_1']
    y2 = data['total_2']
    x_vals.append(x[i])
    y_vals1.append(y1[i])
    y_vals2.append(y2[i])

    plt.cla()
    plt.plot(x_vals, y_vals1, label='Channel 1')
    plt.plot(x_vals, y_vals2, label='Channel 2')

    plt.legend(loc='upper left')

    plt.tight_layout()


ani = FuncAnimation(plt.gcf(), animate, interval=100)

plt.show()
4

0 回答 0