在上一篇文章中少即是多!如何在复杂混乱的折线图中突出一条线(附Python代码),介绍了在很多条折线中凸显某一个折线。
![3ab7575449774531cf28b7989a9d8d1b.png](https://i-blog.csdnimg.cn/blog_migrate/0c79ae0302e8dec2c911b9c9bb4c8583.jpeg)
本篇不再赘述数据读取和处理部分,可翻看前面的文章了解。
下面老海统一介绍四种方法,实现突出多组折线数据中最重要的那一条数据
其中,小倍图概念来自可视化大师的推荐,主旨是化繁为简,less is more!
方法一:强调突出某条折线
![473ae52f6b0d697f7ad355872a8602f8.png](https://i-blog.csdnimg.cn/blog_migrate/5e048b388c57576911c604cbc1b6dd6c.jpeg)
# 画出其他城市的折线for i in City_name[1:6]: # 按照城市筛选数据 City_data = Sales_data_sum.loc[Sales_data_sum['门店城市']==i] # 画出每个城市的折线 plt.plot(City_data.index, City_data['购买数量'], color='grey') # 设置为灰色 # 画出每个城市的数据标签,如城市名称 plt.text(City_data.index[-1], City_data['购买数量'][-1], i,color='grey') # 设置为灰色 # 画出重点突出的折线One_City_data = Sales_data_sum.loc[Sales_data_sum['门店城市']==City_name[0]] # 本案例具体是指北京plt.plot(One_City_data.index, One_City_data['购买数量'], color='orange', linewidth=4, alpha=0.7)plt.text(One_City_data.index[0], One_City_data['购买数量'][0], City_name[0], color='orange')# 设置图表的其他元素plt.title("北京5月份销量变化情况", loc='left', fontsize=30, fontweight=0, color='orange') # 设置图表标题plt.xlabel("时间") # 设置X轴坐标名称plt.ylabel("购买数量") # 设置Y轴坐标名称sns.despine() # 默认无参数状态,就是删除上方和右方的边框,matplotlib貌似做不到plt.show()
![f496c58f320c942b9cd3aa5db33a882d.png](https://i-blog.csdnimg.cn/blog_migrate/320ebd0898446c97b3803744e3e26086.jpeg)
方法二:将复杂的多组折线,切分为小倍图
![c8bbd81714377a0cfac0cf850e4c71b9.png](https://i-blog.csdnimg.cn/blog_migrate/7a1809837290f4474b312bb97686f229.jpeg)
import mathimport matplotlib.dates as mdate# start_time = pd.to_datetime('2015-05-01',format="%Y/%m/%d")# end_time = pd.to_datetime('2015-05-31',format="%Y/%m/%d")n = 2 # 设置画板切为几行显示,由数据字段个数/行数,来控制列数plt.figure(figsize=(10*n,10)) # 也可控制画板高度 mapnum = 0for i in City_name: mapnum+=1 plt.subplot(n,math.ceil(len(City_name)/n), mapnum) # !!按照城市筛选数据,优先画出重点城市的折线 City_data = Sales_data_sum.loc[Sales_data_sum['门店城市']=