Python温湿度传感器实时曲线
时间: 2024-11-17 11:13:46 浏览: 11
在Python中,要创建一个温湿度传感器实时曲线图,通常我们会使用像`matplotlib`这样的数据可视化库来绘制图表,并结合如`DHTxx`系列的温湿度传感器模块(比如DHT11、DHT22或AM2302)获取实时数据。下面是一个简单的例子:
首先,确保安装了所需的库:
```bash
pip install Adafruit_DHT matplotlib
```
然后,编写Python脚本来读取数据并展示曲线:
```python
import Adafruit_DHT as dht
import time
import matplotlib.pyplot as plt
# 配置传感器类型和pin(例如DHT11)
sensor = dht.DHT11
pin = 4
def get_sensor_data():
humidity, temperature = dht.read_retry(sensor, pin)
if humidity is not None and temperature is not None:
return temperature, humidity
else:
print("Failed to read data")
return None, None
# 获取实时数据列表
data_points = []
while True:
temp, humid = get_sensor_data()
if temp is not None:
data_points.append((time.time(), temp, humid))
# 每秒更新一次曲线
time.sleep(1)
# 清空屏幕以便于查看新数据
plt.clf()
x, y1, y2 = zip(*data_points) # 将时间戳,温度和湿度分开
plt.plot(x, y1, label='Temperature')
plt.plot(x, y2, label='Humidity')
plt.xlabel('Time (s)')
plt.ylabel('Value')
plt.title('Real-time Temperature & Humidity Sensor Data')
plt.legend()
plt.pause(0.001) # 冻结显示防止刷新太快丢失信息
# 这里需要一个图形界面环境才能持续显示,可以配合Tkinter或类似工具
plt.show()
```
阅读全文