Python读取txt的所有坐标,并分别以横坐标和纵坐标的数据单独设置两个曲线图
时间: 2024-03-27 20:38:03 浏览: 70
好的,我来回答你的问题。
首先,你需要读取txt文件中的坐标信息。假设txt文件中每行都是一个坐标,坐标的横坐标和纵坐标之间用逗号隔开,那么可以使用如下代码读取:
```python
with open('coords.txt', 'r') as f:
coords = [list(map(float, line.strip().split(','))) for line in f]
```
这里使用了`with open()`语句来打开文件,`r`表示读取模式。然后使用列表推导式将每行的字符串转换成包含两个浮点数的列表。
接下来,你可以使用matplotlib库来绘制曲线图。可以使用`plt.plot()`函数来绘制一条曲线,如下所示:
```python
import matplotlib.pyplot as plt
# 提取横坐标和纵坐标的数据
x = [coord[0] for coord in coords]
y = [coord[1] for coord in coords]
# 绘制横坐标的曲线图
plt.plot(x)
# 显示图像
plt.show()
```
这里使用了列表推导式提取横坐标和纵坐标的数据,并使用`plt.plot(x)`函数绘制横坐标的曲线图。如果需要绘制纵坐标的曲线图,只需要将`plt.plot(x)`改为`plt.plot(y)`即可。
完整代码如下:
```python
import matplotlib.pyplot as plt
# 读取坐标数据
with open('coords.txt', 'r') as f:
coords = [list(map(float, line.strip().split(','))) for line in f]
# 提取横坐标和纵坐标的数据
x = [coord[0] for coord in coords]
y = [coord[1] for coord in coords]
# 绘制横坐标的曲线图
plt.plot(x)
plt.title('X Coords')
plt.xlabel('Index')
plt.ylabel('Value')
plt.show()
# 绘制纵坐标的曲线图
plt.plot(y)
plt.title('Y Coords')
plt.xlabel('Index')
plt.ylabel('Value')
plt.show()
```
阅读全文