读取文件数据绘图 现有2023年5月的鄱阳湖最高水位的水文数据,存储在文件中(文件第一列为日期、第二列为水位数据)。请编程读取文件中的数据,绘制柱状图
时间: 2024-03-06 17:49:01 浏览: 28
好的,以下是 Python 代码实现:
```python
import matplotlib.pyplot as plt
# 读取数据文件
with open('data.txt', 'r') as f:
lines = f.readlines()
# 分离日期和水位数据
dates = []
water_levels = []
for line in lines:
date, water_level = line.strip().split()
dates.append(date)
water_levels.append(float(water_level))
# 绘制柱状图
plt.bar(dates, water_levels)
plt.xticks(rotation=45)
plt.xlabel('日期')
plt.ylabel('水位(m)')
plt.title('2023年5月鄱阳湖水位图')
plt.show()
```
其中,`data.txt` 是存储数据的文件名,需要与代码文件在同一目录下。运行代码后,将会绘制出鄱阳湖2023年5月的水位柱状图。
相关问题
c语言读取txt文件把数据存储到一个变量中
是的,这段代码使用了 C 语言的文件操作函数,通过循环读取三个文件(frame_0.txt、frame_1.txt、frame_2.txt)中的数据,并将每个文件中读取到的第一行数据(4个short类型的整数)存储到名为 pixel0 的变量中。具体来说,这段代码的执行过程如下:
1. 初始化循环计数器 i 为 0。
2. 根据当前的循环计数器 i,使用 sprintf 函数将文件名格式化为 "frame_i.txt" 的形式,并将格式化后的文件名存储到变量 file_name 中。
3. 使用 fopen 函数打开文件名为 file_name 的文件,并将文件句柄存储到变量 fd 中。
4. 使用 fscanf 函数从文件 fd 中读取一行数据,并使用格式字符串 "%4h\n" 将读取到的数据按照 short 类型解析,并将解析后的数据存储到数组 pixel0 中。
5. 关闭文件 fd。
6. 将循环计数器 i 增加 1。
7. 如果循环计数器 i 小于 3,则跳转到步骤 2,否则结束循环。
用pandas读取csv文件中Date列为2019年的数据
可以使用以下代码来读取csv文件中Date列为2019年的数据:
```python
import pandas as pd
data = pd.read_csv('filename.csv', parse_dates=['Date'], index_col='Date')
data_2019 = data.loc[data.index.year == 2019]
```
这里假设csv文件中包含一个名为"Date"的日期列,并且日期格式已经被正确解析。`parse_dates`参数用于指定需要解析的日期列,`index_col`参数用于将日期列作为索引列。
`data.loc[data.index.year == 2019]`用于选取所有日期为2019年的行。