我有一个python文件,它将数据写入csv文件。 我有另一个python文件,它从csv文件中读取数据并将其显示在绘图上。你知道吗
当我尝试运行CMD上的第一个文件时,csv文件不会被创建,而应该写入csv文件的值会被打印出来。你知道吗
当我使用IDLE运行第一个文件时,我可以看到正在创建csv文件,并且数据正在写入其中。此外,我可以看到在csv文件中使用第二个文件的变化,因为它每秒钟检查更新。你知道吗
有人知道为什么不能用CMD吗?你知道吗
使用python已经4个月了
第一个文件:
https://www.codepile.net/pile/eZ68EbXd
import csv
import random
import time
x_value = 0
total_1 = 1000
total_2 = 1000
fieldnames = ["x_value", "total_1", "total_2"]
with open('data.csv', 'w') as csv_file:
csv_writer = csv.DictWriter(csv_file, fieldnames=fieldnames)
csv_writer.writeheader()
while True:
with open('data.csv', 'a') as csv_file:
csv_writer = csv.DictWriter(csv_file, fieldnames=fieldnames)
info = {
"x_value": x_value,
"total_1": total_1,
"total_2": total_2
}
csv_writer.writerow(info)
print(x_value, total_1, total_2)
x_value += 1
total_1 = total_1 + random.randint(-6, 8)
total_2 = total_2 + random.randint(-5, 6)
time.sleep(1)
第二个文件:https://www.codepile.net/pile/GndPGGn1
import random
from itertools import count
import pandas as pd
import matplotlib.pyplot as plt
from matplotlib.animation import FuncAnimation
plt.style.use('fivethirtyeight')
x_vals = []
y_vals = []
index = count()
def animate(i):
data = pd.read_csv('data.csv')
x = data['x_value']
y1 = data['total_1']
y2 = data['total_2']
plt.cla()
plt.plot(x,y1,label = 'Channel 1')
plt.plot(x,y2,label = 'Channel 2')
plt.legend(loc= 'upper left')
plt.tight_layout()
ani = FuncAnimation(plt.gcf(),animate,interval= 1000)
plt.tight_layout()
plt.show()
谢谢
顺便说一句,我正在运行python3.7.2
目前没有回答
相关问题 更多 >
编程相关推荐