python绘制组合图表

简介: 笔记

一、折线图+折线图


import numpy as np
import matplotlib.pyplot as plt
#解决中文乱码问题
plt.rcParams['font.sans-serif'] = ['Arial Unicode MS']
# 解决负号无法正常显示的问题
plt.rcParams['axes.unicode_minus']=False
#在默认设置下matplotlib做出来的图表不是很清楚,可以将图表设置成矢量格式显示
# plt.savefig("test.svg", format="svg")
# 建立坐标系
plt.subplot(1,1,1)
# 指明x和y的值
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,1060,802,1906,2214,3515])
# 绘图
plt.plot(x,y1,color = 'k',linestyle = 'solid',linewidth =1,marker = 'o',markersize = 3,label = '注册人数')
plt.plot(x,y2,color = 'k',linestyle = 'dashdot',linewidth =1,marker = 'o',markersize = 3,label = '激活人数')
# 设置标题
plt.title('xxxxxxxxxx',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)
# 设置x轴y轴的名称
plt.xlabel('月份')
plt.ylabel('注册量')
#设置x轴y轴的的刻度
plt.xticks(np.arange(1,10,1),['1月','2月','3月','4月','5月','6月','7月','8月','9月'])
plt.yticks(np.arange(1000,7000,1000),['1000人','2000人','3000人','4000人','5000人','6000人','7000人','8000人','9000人'])
# 设置图例
plt.legend()
# 显示图表
plt.show()

效果如下:

1.png

二、折线图+柱形图


import numpy as np
import matplotlib.pyplot as plt
#解决中文乱码问题
plt.rcParams['font.sans-serif'] = ['Arial Unicode MS']
# 解决负号无法正常显示的问题
plt.rcParams['axes.unicode_minus']=False
#在默认设置下matplotlib做出来的图表不是很清楚,可以将图表设置成矢量格式显示
# plt.savefig("test.svg", format="svg")
# 建立坐标系
plt.subplot(1,1,1)
# 指明x和y的值
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,1060,802,1906,2214,3515])
# 绘图
plt.plot(x,y1,color = 'k',linestyle = 'solid',linewidth =1,marker = 'o',markersize = 3,label = '注册人数')
plt.bar(x,y2,color = 'k',label = '激活人数')
# 设置标题
plt.title('xxxxxxxxxx',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)
# 设置x轴y轴的名称
plt.xlabel('月份')
plt.ylabel('注册量')
#设置x轴y轴的的刻度
plt.xticks(np.arange(1,10,1),['1月','2月','3月','4月','5月','6月','7月','8月','9月'])
plt.yticks(np.arange(1000,7000,1000),['1000人','2000人','3000人','4000人','5000人','6000人','7000人','8000人','9000人'])
# 设置图例
plt.legend()
# 显示图表
plt.show()


效果如下:

2.png

三、绘制双坐标轴的图表


import numpy as np
import matplotlib.pyplot as plt
#解决中文乱码问题
plt.rcParams['font.sans-serif'] = ['Arial Unicode MS']
# 解决负号无法正常显示的问题
plt.rcParams['axes.unicode_minus']=False
#在默认设置下matplotlib做出来的图表不是很清楚,可以将图表设置成矢量格式显示
# plt.savefig("test.svg", format="svg")
# 建立坐标系
plt.subplot(1,1,1)
# 指明x和y的值
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.5,0.3,0.3,0.4,0.3,0.3,0.9,0.01,0.15])
# 绘制在主坐标轴上的图表
plt.plot(x,y1,color = 'k',linestyle = 'solid',linewidth =1,marker = 'o',markersize = 3,label = '注册人数')
# 设置主x轴y轴的名称
plt.xlabel('月份')
plt.ylabel('注册量')
# 设置图例
plt.legend(loc = 'upper left')
# 调用twin方法
plt.twinx()
# 绘制次坐标轴的图表
plt.plot(x,y2,color = 'k',linestyle = 'dashdot',linewidth =1,marker = 'o',markersize = 3,label = '激活率')
# 设置次x轴y轴的名称
plt.xlabel('月份')
plt.ylabel('注册量')
# 设置图例
plt.legend()
# 显示图表
plt.show()

效果如下:

3.png


相关文章
|
5月前
|
数据可视化 数据挖掘 UED
Python中的数据可视化:使用Matplotlib创建交互式图表
传统的数据可视化工具通常只能生成静态图表,而在数据分析和展示中,交互式图表能够提供更丰富的用户体验和更深入的数据探索。本文将介绍如何利用Python中的Matplotlib库创建交互式图表,让数据分析变得更加生动和直观。
|
13天前
|
Python
以下是一些常用的图表类型及其Python代码示例,使用Matplotlib和Seaborn库。
以下是一些常用的图表类型及其Python代码示例,使用Matplotlib和Seaborn库。
|
29天前
|
数据可视化 Python
Python中的数据可视化:使用Matplotlib绘制图表
【9月更文挑战第11天】在这篇文章中,我们将探索如何使用Python的Matplotlib库来创建各种数据可视化。我们将从基本的折线图开始,然后逐步介绍如何添加更多的功能和样式,以使您的图表更具吸引力和信息量。无论您是数据科学家、分析师还是任何需要将数据转化为视觉形式的专业人士,这篇文章都将为您提供一个坚实的起点。让我们一起潜入数据的海洋,用视觉的力量揭示其背后的故事。
42 16
|
12天前
|
数据可视化 数据挖掘 数据处理
Seaborn——让图表更美观、更智能
Seaborn——让图表更美观、更智能
24 0
|
1月前
|
数据挖掘 数据处理 Python
python如何高效处理excel图表案例分享
python如何高效处理excel图表案例分享
30 2
|
2月前
|
数据可视化 物联网 区块链
探索Python中的数据可视化:使用Matplotlib和Seaborn绘制图表探索未来:区块链、物联网与虚拟现实的融合趋势与应用前景
【8月更文挑战第30天】本文旨在引导读者通过Python编程语言,利用Matplotlib和Seaborn库,轻松掌握数据可视化技术。文章以浅显易懂的语言,结合实用的代码示例,从基础的图表绘制到高级定制功能,逐步深入讲解如何在数据分析中运用这些工具。无论你是编程新手还是希望提升可视化技能的开发者,都能在这篇文章中找到有价值的信息,让你的数据“活”起来。
|
2月前
|
机器学习/深度学习 数据可视化 数据挖掘
Python中的数据可视化:使用Matplotlib库绘制图表
【8月更文挑战第30天】数据可视化是数据科学和分析的关键组成部分,它帮助我们以直观的方式理解数据。在Python中,Matplotlib是一个广泛使用的绘图库,提供了丰富的功能来创建各种类型的图表。本文将介绍如何使用Matplotlib库进行数据可视化,包括安装、基本概念、绘制不同类型的图表以及自定义图表样式。我们将通过实际代码示例来演示如何应用这些知识,使读者能够轻松地在自己的项目中实现数据可视化。
|
2月前
|
数据可视化 Python
Python的Matplotlib库创建动态图表
【8月更文挑战第19天】Matplotlib是Python中广泛使用的数据可视化库,擅长生成静态图表如折线图、散点图等。本文介绍如何利用其创建动态图表,通过动画展示数据变化,加深对数据的理解。文章涵盖动态折线图、散点图、柱状图、饼图及热力图的制作方法,包括开启交互模式、更新数据和重绘图表等关键步骤,帮助读者掌握Matplotlib动态图表的实用技巧。
42 0
|
3月前
|
数据可视化 数据挖掘 定位技术
Seaborn统计图表指南
【7月更文挑战第12天】Seaborn是Python的数据可视化库,基于Matplotlib,提供美观的统计图形。要开始使用,需通过`pip install seaborn`安装。它支持多种图表,如分布图、热图、聚类图、箱线图、小提琴图、联合分布图、点图、多变量分布图、线性关系图、树地图、时间序列图、分面绘图、分类数据图、分布对比图、多变量图和气泡图等,适用于复杂数据分析和展示。Seaborn简化了创建这些高级图表的过程,使数据可视化更直观和高效。
57 5
|
3月前
|
数据采集 机器学习/深度学习 数据可视化
了解数据科学面试中的Python数据分析重点,包括Pandas(DataFrame)、NumPy(ndarray)和Matplotlib(图表绘制)。
【7月更文挑战第5天】了解数据科学面试中的Python数据分析重点,包括Pandas(DataFrame)、NumPy(ndarray)和Matplotlib(图表绘制)。数据预处理涉及缺失值(dropna(), fillna())和异常值处理。使用describe()进行统计分析,通过Matplotlib和Seaborn绘图。回归和分类分析用到Scikit-learn,如LinearRegression和RandomForestClassifier。
75 3