写出python代码。可以实现通过命令把CSV文件的指定列名生成曲线图,生成的CSV文件自动命名并保存到当前文件夹。通过命令可以查看指定的若干条标题整列的曲线图。 1.CSV文件有100个标题,3000行。 2.可以根据标题生成指定的几条曲线图,一个标题的曲线为一个画布。
时间: 2023-07-15 12:11:01 浏览: 101
以下是一个可行的Python代码,使用了matplotlib库和pandas库来读取CSV文件和绘制曲线图:
```python
import matplotlib.pyplot as plt
import pandas as pd
import argparse
import os
# 定义命令行参数
parser = argparse.ArgumentParser(description='Generate line charts from a CSV file')
parser.add_argument('filename', type=str, help='CSV file name')
parser.add_argument('columns', type=str, nargs='+', help='Column names to plot')
args = parser.parse_args()
# 读取CSV文件
df = pd.read_csv(args.filename)
# 针对每个指定的列名生成曲线图
for col in args.columns:
fig, ax = plt.subplots()
ax.plot(df[col])
ax.set(xlabel='Index', ylabel=col, title=f'Line chart for {col}')
ax.grid()
# 将文件保存到当前文件夹,并自动命名
filename = f'{os.path.splitext(args.filename)[0]}_{col}_line_chart.png'
plt.savefig(filename)
plt.show()
```
使用该代码,可以在命令行中运行:
```
python plot_csv.py data.csv column1 column2 column3
```
其中,`data.csv`是要绘制的CSV文件名,`column1`、`column2`和`column3`是要生成曲线图的列名。这将生成三个PNG文件,分别显示`column1`、`column2`和`column3`的曲线图。如果需要生成更多的曲线图,只需要在命令行中指定更多的列名即可。
阅读全文