python - 如何在python中从csv绘制图形

标签 python python-3.x csv matplotlib

我有以下代码,想知道如何在 python 中将其绘制为图形

year,month,sales,expenditure
2018,jan,6226,3808
2018,feb,1521,3373
2018,mar,1842,3965
2018,apr,2051,1098
2018,may,1728,3046
2018,jun,2138,2258
2018,jul,7479,2084
2018,aug,4434,2799
2018,sep,3615,1649
2018,oct,5472,1116
2018,nov,7224,1431
2018,dec,1812,3532

到目前为止,这是我的代码
import matplotlib.pyplot as plt
import csv

x = []
y = []

with open('sales.csv','r') as sales_csv:
    plots = csv.reader(sales_csv, delimiter=',')
    for row in plots:
        x.append(row[1])
        y.append(row[3])

plt.plot(x,y, label='Loaded from file!')
plt.xlabel('x')
plt.ylabel('y')
plt.show()

最佳答案

df =pd.read_csv('filename.csv', sep=',')

months = {'jan':1,
          'feb':2,
          'mar':3,
          'apr':4,
          'may':5,
          'jun':6,
          'jul':7,
          'aug':8,
          'sep':9,
          'oct':10,
          'nov':11,
          'dec':12
         }

plt.plot(df['month'].replace(months), df['sales'], label='sales')
plt.plot(df['month'].replace(months), df['expenditure'], label='expenditure')

plt.gca().set_xticks(list(months.values()))
plt.gca().set_xticklabels(list(months.keys()))
plt.legend()

enter image description here

关于python - 如何在python中从csv绘制图形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62374618/

相关文章:

java - OpenCSV:如何使用自定义列标题和自定义列位置从 POJO 创建 CSV 文件?

python - hashlib 找不到ripemd160

python - `key_prefix` 对 flask 缓存有什么作用?

python - 迭代列表列表并附加到新列表

python - Python按顺序运行函数;如果失败,请停止

python - 从另一个文件导入一个函数,在哪里导入其他库?

python - 检查哥德巴赫猜想是否成立 N

python - 属性错误: module 'pip._internal.download' has no attribute 'HTTPAdapter'

python - 对不同字典中相同键的多个值求和 Python

ruby - 如何从 Ruby 中的给定行 n 开始读取文件(CSV)