Python数据可视化之12种常用图表的绘制(三)——四种组合图表的绘制(附代码和效果图)

Python学习笔记 专栏收录该内容
47 篇文章 6 订阅


通过前两篇博文我们已经学会了折线图/柱形图/条形图/散点图/气泡图/面积图的绘制
以及树地图&雷达图&箱型图&饼图&圆环图&热力图
可以看看这两篇博文
Python数据可视化之12种常用图表的绘制(一)——折线图/柱形图/条形图/散点图/气泡图/面积图
Python数据可视化之12种常用图表的绘制(二)——树地图&雷达图&箱型图&饼图&圆环图&热力图(附代码和效果图)
现在我们来学习四种组合图表的绘制

折线图+折线图

废话不多说
直接上代码

import numpy as np
import matplotlib.pyplot as plt
plt.subplot(1,1,1)
x = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9])
y1 = np.array([866, 2335, 5710, 6482, 6120, 1605, 3813, 4428, 4631])
y2=np.array([433,1167,2855,3241,3060,802,1906,2214,2315])
plt.rcParams['font.sans-serif']=['KaiTi']
plt.rcParams['axes.unicode_minus']=False
plt.plot(x,y1,color="k",linestyle="dashdot",
         linewidth=1,marker="o",markersize=3,label="用户注册量")
plt.plot(x,y2,color="k",linestyle="dashdot",
         linewidth=1,marker="o",markersize=3,label="激活注册量")
plt.title("python爱好者社区公众号1-9月注册用户量",loc="center")
for a,b in zip(x,y1):
    plt.text(a,b,b,ha='center',va="bottom",fontsize=11)
for a, b in zip(x, y2):
    plt.text(a, b, b, ha='center', va="bottom", fontsize=11)
plt.xlabel("月份")
plt.ylabel("注册量")
plt.xticks(np.arange(9), ["一月份", "二月份", "三月份",
                          "四月份", "五月份", "六月份", "七月份", "八月份", "九月份"])
plt.yticks(np.arange(1000, 7000, 1000),
           ["1000人", "2000人", "3000人", "4000人", "5000人", "6000人"])
plt.grid(True)
plt.legend()
plt.savefig(r"C:\Users\xiaoLiu\Desktop\keshihua\13.jpg")
plt.show()

效果图
在这里插入图片描述
怎么样,还行吧~

折线图+柱形图

代码撸起来

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

x = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9])
y1 = np.array([866, 2335, 5710, 6482, 6120, 1605, 3813, 4428, 4631])
y2 = np.array([433, 1167, 2855, 3241, 3060, 802, 1906, 2214, 2315])
plt.rcParams['font.sans-serif'] = ['KaiTi']
plt.rcParams['axes.unicode_minus'] = False
fig = plt.figure()
plt.figure(figsize=(8, 6))
plt.xlim(0, 10)
plt.ylim(0, 10000)
plt.xticks(np.arange(9), ["一月份", "二月份", "三月份", "四月份", "五月份", "六月份", "七月份", "八月份", "九月份"])
plt.yticks(np.arange(1000, 7000, 1000), ["1000人", "2000人", "3000人", "4000人", "5000人", "6000人"])
plt.xlabel("月份", labelpad=10, fontsize='xx-large', color='#70AD47', fontweight='bold')
plt.ylabel("注册人数", labelpad=10, fontsize='xx-large', color='#70AD47', fontweight='bold')
plt.grid(b=True, linestyle="dashed", linewidth=1)
plt.title(label="1-9月python爱好者社区注册与激活用户数",loc="center")
for a, b in zip(x, y1):
    plt.text(a, b, b, ha='center', va='bottom', fontsize=11)
for a, b in zip(x, y2):
    plt.text(a, b, b, ha='center', va='bottom', fontsize=11)
plt.plot(x, y1, color="k",linestyle="solid",linewidth=1,
         marker="o",markersize=3,label='折线图')
plt.bar(x, y2,color="k", label='柱形图')
plt.legend(loc="upper left")
plt.legend(ncol=2)
plt.annotate("服务器宕机了", xy=(6, 1605), xytext=(7, 1605), arrowprops=dict(facecolor='black', arrowstyle='->'))
plt.show()

效果展示
在这里插入图片描述
挺好看的吧~

绘制双y轴图表

import numpy as np
import matplotlib.pyplot as plt
x = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9])
y1 = np.array([866, 2335, 5710, 6482, 6120, 1605, 3813, 4428, 4631])
y2 = np.array([0.54459448, 0.32392354, 0.39002751,
               0.41121879, 0.32063077, 0.33152276,
               0.92226226, 0.02950071, 0.15716906])
plt.rcParams['font.sans-serif'] = ['KaiTi']
plt.rcParams['axes.unicode_minus'] = False
fig = plt.figure()
plt.figure(figsize=(8, 6))
plt.plot(x, y1, color="k",linestyle="solid",linewidth=1,
         marker="o",markersize=3,label='注册人数')
plt.xlabel("月份", labelpad=10, fontsize='xx-large', color='#70AD47', fontweight='bold')
plt.ylabel("注册人数", labelpad=10, fontsize='xx-large', color='#70AD47', fontweight='bold')
plt.grid(b=True, linestyle="dashed", linewidth=1)
plt.legend(loc="upper left")
plt.twinx()
plt.plot(x, y2, color="k",linestyle="dashdot",linewidth=1,
         marker="o",markersize=3,label='激活人数')
plt.xlabel("月份", labelpad=10, fontsize='xx-large', color='#70AD47', fontweight='bold')
plt.ylabel("激活人数", labelpad=10, fontsize='xx-large', color='#70AD47', fontweight='bold')
plt.grid(b=True, linestyle="dashed", linewidth=1)
plt.legend()
plt.title(label="1-9月python爱好者社区注册与激活用户数",loc="center")
plt.savefig(r"C:\Users\xiaoLiu\Desktop\keshihua\14.jpg")
plt.show()

效果图如下
在这里插入图片描述怎么样,好看吧~
好啦,本篇就学到这里

  • 4
    点赞
  • 0
    评论
  • 42
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

<p style="font-size:16px;"> <span style="font-size:18px;"><span style="background-color:#FFFFFF;">Python 数据分析+pyecharts 可视化 + Flask Web端服务 + 2大真实项目 手把手实战教程.</span></span> </p> <p style="font-size:16px;"> Python数据分析课程以Python为核心工具,结合其工具包pyecharts+开发IDEA pycharm + web 框架Flask。课程以案例为中心,结合案例讲解让同学们更清晰掌握每一个知识点应用与工作流程。 </p> <p style="font-size:16px;"> <strong>2大项目案例: 重点讲解 开发架构 + 部署上线流程,手把手实战教学。 </strong> </p> <p style="font-size:16px;"> 1. 开发架构 </p> <p style="font-size:16px;"> (1)基于PyCharm + Flask + Echarts + Python+Pandas 组合进行数据分析全栈开发 </p> <p style="font-size:16px;"> (2)PyCharm: 项目开发IDEA; </p> <p style="font-size:16px;"> (3)Flask:作为WEB框架,主要连接后端服务数据。主要演示: 前后端分离架构 + 模板直接渲染架构; </p> <p style="font-size:16px;"> (4)Echarts: 这里使用pyecharts 作为可视化数据展示; </p> <p style="font-size:16px;"> (5)Python: 作为后端数据生成语言; </p> <p style="font-size:16px;"> (6)Pandas: 主要作为数据分析库; </p> <p style="font-size:16px;"> 2 部署线上服务案例 </p> <p style="font-size:16px;"> (1)资讯类项目-基于Flask 模板渲染 词云; </p> <p style="font-size:16px;"> (2)人口统计项目-基于Flask 前后端分离 Line Bar 组合 数据统计; </p> <p style="font-size:16px;"> <strong>课程特色</strong> </p> <p style="font-size:16px;"> 课程风格通俗易懂 </p> <p style="font-size:16px;"> 案例内容持续更新 </p> <p style="font-size:16px;"> 简单易懂,接地气案例 </p> <p style="font-size:16px;"> 有效,提供所有数据代码 </p> <p style="font-size:16px;"> <img src="https://img-bss.csdn.net/201908291440447128.png" alt="" /> </p> <p style="font-size:16px;"> <br /> </p> <p style="font-size:16px;"> <br /> </p> <p style="font-size:16px;"> <br /> </p> <p style="font-size:16px;"> <img src="https://img-bss.csdn.net/201908291440543352.png" alt="" /> </p> <p style="font-size:16px;"> <br /> </p> <p style="font-size:16px;"> <br /> </p> <p style="font-size:16px;"> <img src="https://img-bss.csdn.net/201908291441085943.png" alt="" /> </p> <p style="font-size:16px;"> <br /> </p> <p style="font-size:16px;"> <br /> </p> <p style="font-size:16px;"> <img src="https://img-bss.csdn.net/201908291441198368.png" alt="" /> </p>
相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值