02 matplotlib - 柱状图、直方图、散点图 、饼图

简介: === 头文件 ===import matplotlib.pyplot as pltimport numpy as npimport pandas as pd# 解决中文显示问题import matplotlib as mplmpl.

=== 头文件 ===

import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
# 解决中文显示问题
import matplotlib as mpl
mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = False
# inline 在行内显示
%matplotlib inline 

=== 柱状图 ===

1、创建数据
2、设置坐标轴中文参数,代替数字 plt.xticks(num,stu)
3、设置每组柱状图的个数(有几个轴)
4、设置刻度 plt.ylim(0,100) 0~100分 plt.xlim(0,7) 6个学生
5、绘制柱状图 plt.bar 颜色、对其方式align、位置调整num-2*w
# x轴: 学生信息
stu=np.array(["张三","李四","王五","赵六","钱七","周八"])
num = np.arange(1,7) #学号
# x轴刻度: 注释掉为学号,放开为姓名
plt.xticks(num,stu)

# y轴: 两门成绩
score_chinese=np.random.randint(0,100,6)
score_maths=np.random.randint(0,100,6)
score_english=np.random.randint(0,100,6)
# 每组数据多少个轴(语文、数学两个轴)
#n=2
n=3
w=0.8/n

# 设置y轴刻度
plt.ylim(0,100)
plt.xlim(0,7)


# 图像对齐方式align: 居中center 左对齐edge


# 双数个轴用 edge
#plt.bar(num-w,score_chinese,label='语文',color='green',width=w,align='edge')
#plt.bar(num,score_maths,label='数学',color='blue',width=w,align='edge')
# plt.bar(num+w,score_english,label='英语',color='red',width=w,align='center')

# 单数个轴用center
plt.bar(num,score_chinese,label='语文',color='green',width=w,align='center')
plt.bar(num-w,score_maths,label='数学',color='blue',width=w,align='center')
plt.bar(num+w,score_english,label='英语',color='red',width=w,align='center')

plt.legend(loc='upper left')
img_3e01f67d6f6034a5c4bf90c2db1fa7ed.png
偶数个轴
img_0f3deae54f36df7321d87662c41d25ab.png
奇数个轴
scores = pd.read_csv('../Pandas_module/student_info1.csv',header=1,names=['Chinese','Math','English'])
scores = scores.fillna(0)
scores
img_5c5b07a0cdb8a52d57ba37be280dc0b7.png
plt.bar(scores.index.values,scores['Chinese'])
img_09a1acca23eaaeb1fad1c0f9610c70f5.png

=== 直方图 ===

直方图(Histogram)又称质量分布图。是一种统计报告图,由一系列高度不等的纵向条纹或线段表示数据分布的情况。 一般用横轴表示数据类型,纵轴表示分布情况。

# 随机生成一组正态分布的数据
x=np.random.randn(1000)

# 用直方图表示这组数据
# plt(x,bins,weight)
# x: 数据
# bins: 多少个条状图
# weights: x的数据,对每一组的贡献(倍数) #得和我们的数据大小相同 #加上weight后,x的数据会乘以10体现在y轴刻度上
# bottom: 底部从多少开始,y轴刻度最低为10
# orientation= 'horizontal' 横向显示
w=np.random.randint(10,11,1000)
plt.hist(x,50,weights=w,bottom=100)
plt.show()
img_1d51b3a9b26973ec6d866a9c5d8747e7.png

=== 散点图 ===

# 散点图 scatter
# x身高 y体重
x=np.array([150,151,154,156,185,185,176,175,178,178,190,198,174])
y=np.array([45,45,46,47,70,76,65,64,67,65,68,67,87])

# 看哪个分布段的身高和体重最多
plt.scatter(x,y)
plt.show()
img_71dbc2b0c3cf49703297df6bb5660c16.png

=== 饼图 ===

# plt.pie()
month=['1月','2月','3月']
counts=[1300,1600,5000]
# 以逆时针来绘制
# startangle 开始绘制的角度
# explode 把饼取出来一点
# shadow 阴影
# autopct="%.1f%%" 显示百分比
# radius=0.8大小缩小到80%

explodes=[0.2,0,0]
plt.pie(counts,labels=month,startangle=90,explode=explodes
        ,shadow=True,autopct="%.1f%%",radius=0.8)
plt.show()
img_7f74299ee6451a023cf444319131f380.png
相关文章
|
1月前
|
数据可视化 Python
Matplotlib 直方图
Matplotlib 直方图
46 11
|
1月前
|
Java Go C#
Matplotlib 散点图
Matplotlib 散点图
36 0
Matplotlib 散点图
|
3月前
|
数据可视化 Python
Matplotlib 教程 之 Matplotlib 直方图 2
使用 Matplotlib 的 `hist()` 方法绘制直方图,通过实例展示了如何比较多组数据的分布。`hist()` 方法属于 Matplotlib 的 pyplot 子库,能有效展示数据分布特性,如中心趋势和偏态。示例中通过生成三组正态分布的随机数据并设置参数(如 bins、alpha 和 label),实现了可视化比较。
49 3
|
3月前
|
数据可视化 Python
Matplotlib 教程 之 Matplotlib 饼图 5
使用 Matplotlib 的 `pie()` 方法绘制饼图,通过参数设置(如颜色、标签和比例等),轻松展示各类别占比。示例代码展示了如何创建一个具有突出部分的彩色饼图并显示百分比。`pie()` 方法支持多种参数定制,包括阴影、旋转角度及文本属性等。
57 3
|
3月前
|
数据可视化 Python
Matplotlib 教程 之 Matplotlib 饼图 4
使用 Matplotlib 的 `pie()` 方法绘制饼图,展示各部分占比。`pie()` 方法可通过多个参数定制图表样式,如颜色、标签和百分比显示格式等。通过实例演示了如何突出显示特定扇区并格式化百分比输出。
33 4
|
3月前
|
数据可视化 Python
Matplotlib 教程 之 Matplotlib 直方图 4
使用 Matplotlib 库中的 `hist()` 方法绘制直方图,该方法可用于展示数据分布情况,如中心趋势、偏态及异常值等。通过实例演示了如何设置柱子数量 (`bins` 参数) 并配置图形标题与坐标轴标签。`hist()` 方法接受多个参数以自定义图表样式,包括颜色、方向及是否堆叠等。
33 1
|
3月前
|
数据可视化 Python
Matplotlib 教程 之 Matplotlib 饼图 1
使用 Matplotlib 库中的 `pyplot` 模块 `pie()` 方法来绘制饼图,并详细解释了 `pie()` 方法的参数,包括数据输入 `x`、扇区间距 `explode`、标签 `labels`、颜色 `colors`、百分比格式 `autopct`、标签距离 `labeldistance`、阴影 `shadow`、半径 `radius`、起始角度 `startangle`、逆时针方向 `counterclock`、扇形属性 `wedgeprops`、文本标签属性 `textprops`、饼图中心位置 `center`
38 1
|
3月前
|
数据可视化 Python
Matplotlib 教程 之 Matplotlib 散点图 9
使用Matplotlib中的`scatter()`方法绘制散点图。该方法接受多个参数,如数据点位置(x,y)、点的大小(s)、颜色(c)等,并支持多种颜色样式和配置选项。通过调整这些参数,用户可以自定义散点图的外观和表现形式,实现丰富的可视化效果。
28 0
|
4月前
|
Python
以下是一些常用的图表类型及其Python代码示例,使用Matplotlib和Seaborn库。
以下是一些常用的图表类型及其Python代码示例,使用Matplotlib和Seaborn库。
|
4月前
|
数据可视化 数据挖掘 Linux
震撼发布!Python数据分析师必学,Matplotlib与Seaborn数据可视化实战全攻略!
在数据科学领域,数据可视化是连接数据与洞察的桥梁,能让复杂的关系变得直观。本文通过实战案例,介绍Python数据分析师必备的Matplotlib与Seaborn两大可视化工具。首先,通过Matplotlib绘制基本折线图;接着,使用Seaborn绘制统计分布图;最后,结合两者在同一图表中展示数据分布与趋势,帮助你提升数据可视化技能,更好地讲述数据故事。
72 1