我将一些数据存储在数组中,比如温度、湿度和强度,这是我的python2.7的arduino输出和输入,我正在根据这些数据绘制图形。我想将arduino的输出也存储到文本文件中,但我不能这样做,因为我是python的新手。
这是我的代码
import serial
import numpy as np
import matplotlib.pyplot as plt
from drawnow import *
l=[]
t = []
h = []
arduinoData = serial.Serial('com3',115200)
plt.ion()
count=0
def makeFig():
ax1 = plt.subplot(211)
plt.ylim(0,100)
plt.title('Temperature and Humidity')
plt.grid(True)
plt.ylabel('temp in C')
plt.plot(t, 'ro-', label='Drgrees Celsius')
plt.legend(loc='upper left')
plt2=plt.twinx()
plt.ylim(0,100)
plt2.plot(h,'b^-',label='Humidity in %')
plt2.legend(loc='upper right')
ax2 = plt.subplot(212, sharex=ax1)
plt.ylim(0,100)
plt.grid(True)
plt.ylabel('Intensity in Lux')
plt.plot(l, 'ro-', label='Lux')
plt.legend(loc='upper left')
while True:
while (arduinoData.inWaiting()==0):
pass
arduinoString = arduinoData.readline()
dataArray = arduinoString.split(',')
lux = float (dataArray[0] )
humd = float ( dataArray[1])
temp = float ( dataArray[2])
t.append(temp)
h.append(humd)
l.append(lux)
drawnow(makeFig)
plt.pause(.000001)
count=count+1
if(count>60):
t.pop(0)
h.pop(0)
l.pop(0)
我想将t,h,l存储在文本文件中作为输出帮助将不胜感激...
发布于 2018-07-05 01:16:28
只需使用以下命令即可打开文件:
f = open('file.txt', 'w')
然后,您可以使用以下命令对其进行写入:
f.write("Value of t : {}".format(t))
最后,使用以下命令关闭文件
f.close()
发布于 2018-06-28 07:55:18
你说打印,是指输出到文本文件吗?如果是这样,您可以添加:
np.savetxt('filename.txt', np.r_[t,h,l])
filename.txt可以是您想要的文本文件的任何名称,除非您有一个
np.r将连接矩阵。我不确定这是否是你想要做的,但这是一个选择
https://stackoverflow.com/questions/51072814
复制相似问题