使用 Python 3 将 csv 的列打印为列表,然后使用 Matplotlib 制作图形

问题描述

我正在尝试使用 matplotlib 从 csv 文件中的列制作图表。到目前为止,我有

@H_404_2@X = [] Y = [] for line in file: column=line.split(',') year=str(column[3]) for year in X: X.append(year) for line in file: column=line.split(',') emissions=str(column[4]) for emissions in Y: Y.append(emissions) plt.plot(X,Y)

但它正在打印一个空白图。

解决方法

只需使用 Pandas!

import pandas as pd
import matplotlib.pyplot as plt

# Read CSV
df = pd.read_csv('yourcsv.csv')

X = df.iloc[:,0] # First column
Y = df.iloc[:,1] # Second column

print('First column: ',list(X),'Second column: ',list(Y))

plt.plot(X,Y)
,

请记住,您只能读取一次文件。在第一个循环之后,您位于文件的末尾。当您想要整数时,为什么要转换为字符串?你只需要这个:

X = []
Y = []
for line in file:
    column=line.split(',')
    X.append(int(column[3]))
    Y.append(int(column[4]))

plt.plot(X,Y)