matplotlib绘制火柴杆图之基本配置——万能模板案例
【摘要】
import pandas as pdimport numpy as npimport pymysqlimport matplotlib.pyplot as plt plt.rcParams['font.sans-serif']=['SimHei'] #显示中文plt.rcParams['axes.unicode_minus']...
import pandas as pd
import numpy as np
import pymysql
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] #显示中文
plt.rcParams['axes.unicode_minus']=False #正常显示负号
db = pymysql.connect(host='127.0.0.1',user='root',password='root',database='mydb')
# 查询每个省份 实际物流天数 和 预计物流天数 的差的 平均值
sql = "SELECT CUST_PROV,avg(datediff(DELIVER_DATE,ORDER_DATE)-DELIVER_DAYS) as DATE_DIFF FROM orders WHERE FY=2019 GROUP BY CUST_PROV"
df = pd.read_sql_query(sql,db)
plt.figure(figsize=(15,7)) #设置图形大小
label = "平均延迟天数"
X = df.CUST_PROV
Y = df.DATE_DIFF
markerline, stemlines, baseline = plt.stem(X, Y, label=label,
bottom=-0.2, # 基线
)
# 设置属性
plt.setp(markerline, color='red', marker='o',ms=8) # marker点:火柴头 ms=markersize
plt.setp(stemlines, color='#FF9900', lw=3, ls=':' ) # 火柴杆 lw=linewidth
plt.setp(baseline, color='g', linewidth=2, ls='-') # 基准线 ls=linestyle
plt.xlabel('省市自治区')
plt.ylabel('平均延迟天数')
plt.title('2019年各省市平均延迟天数')
plt.legend()
plt.show()
通过获取物流数据进行计算,我们需要可视化出每个地区的物流延迟天数,有利于我们加强对不同地区的物流进行整改,进一步促进智慧物流的形成。
每文一语
沉思不如实践
文章来源: wxw-123.blog.csdn.net,作者:王小王-123,版权归原作者所有,如需转载,请联系作者。
原文链接:wxw-123.blog.csdn.net/article/details/124063394
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)