csv数据转直方图
使用说明
安装第三方库
- python环境下安装 matplotlib
pip install matplotlib
- python环境下安装 pandas
pip install pandas
使用
在code目录下打开cmd,输入指令
python csvConvert.py
csv数据结构
源码
import matplotlib.pyplot as plt
import pandas as pd
import re
# 输出收入表
def print_income():
# 读取csv文件
datas = pd.read_csv("../input/company_top10.csv", encoding='GBK')
print("数据读取成功:")
print(datas)
# 获取公司名称,用正则过滤
company = []
for i in datas['公司']:
tmp = re.sub('[^A-Z]','',i)
company.append(tmp)
print(company)
# 获取公司收入
income = []
for i in datas['收入']:
tmp = i.replace(',', '')
income.append(float(tmp))
print(income)
# 绘制直方图
index = company
plt.title("top10 company income", fontsize=18)
plt.xlabel('', fontsize=10)
plt.ylabel("income", fontsize=14)
plt.bar(index, income, label='income')
plt.xticks(rotation=50)
plt.legend()
plt.show()
# 输出利润表
def print_profit():
# 读取csv文件
datas = pd.read_csv("../input/company_top10.csv", encoding='GBK')
print("数据读取成功:")
print(datas)
# 获取公司名称,用正则过滤
company = []
for i in datas['公司']:
tmp = re.sub('[^A-Z]', '', i)
company.append(tmp)
print(company)
# 获取公司利润
profit = []
for i in datas['利润']:
tmp = i.replace(',', '')
profit.append(float(tmp))
print(profit)
# 表格的index值
index = company
plt.title("top10 company profit", fontsize=18)
plt.xlabel('', fontsize=16)
plt.ylabel("profit", fontsize=14)
plt.bar(index, profit, label='profit')
plt.xticks(rotation=50)
plt.legend()
plt.show()
if __name__=="__main__":
index = input('请输入你想要输出的直方图:(1.收入表,2.利润表)')
if(index == '1'):
print_income()
elif (index == '2'):
print_profit()
else:
print('no answer')