Matplotlib绘图一网打尽【持续更新ing】

2 绘制扇形图

绘制一个展示男女乘客比例的扇形图

得出男女的具体数字

python 复制代码
sex_per = df["Sex"].value_counts()
sex_per
python 复制代码
# 把画图的包导入进来
import matplotlib.pyplot as plt

# 这种绘图方式主要用于有多个子图以及复杂的图形布局的时候。

fig,ax = plt.subplots()

# plt.subplots() 会创建一个新的图形(figure)和对应的轴(axes)对象。
# 这个函数返回一个元组,第一个元素是图(figure),第二个元素是轴(axes)。

# fig 是用来设置图形的一些全局属性,比如标题、坐标轴范围等。
# ax 是一个包含两个轴的子图对象,可以用于绘制图形。

ax.pie(sex_per, labels=sex_per.index)
# 
# 第一个参数是,绘图的数据
# 第二个参数是图中的标签,这句话亦可 ax.pie(sex_per, labels=["male","female"])

ax.set_title("Pie Chart")

plt.show()

# 用于在用户界面中打开一个窗口来显示绘制的图形。
# 如果你在绘图过程中省略了plt.show(),那么图形可能不会以预期的方式显示出来。
# 这是因为plt.show()会触发图形的渲染和显示过程。
# 在一些情况下,例如在Jupyter Notebook或IPython中,plt.show()可能不是必需的,
# 因为图形会自动显示。但在其他环境中,例如在脚本或Python交互式解释器中,使用plt.show()是必要的,否则图形将不会显示。
# 因此,虽然plt.show()不是绝对必需的,但在绘图过程中通常建议使用它以确保图形正确显示。
python 复制代码
# 没有多个子图的时候直接用plt绘图即可
plt.pie(sex_per, labels=sex_per.index)
ax.set_title("Pie Chart")
plt.show()

3 绘制散点图

绘制一个展示票价 Fare, 与乘客年龄和性别的散点图

python 复制代码
# 票价与年龄 的散点图


# 用ax绘图,把横纵坐标的数据输入进去
plt.scatter(df["Fare"],df["Age"])
# 添加标题
plt.title(" Fare vs Age")
# 横坐标的标签
plt.xlabel("Fare")
plt.ylabel("Age")
# 纵坐标的标签

plt.show()

将文字的某一列("男"和"女")转成数字

python 复制代码
# 使用map,用一个函数进行映射,将字符串转成数字
Sex = df.Sex.map(lambda x: 0 if x=='male' else 1)
Sex

4 绘制直方图

python 复制代码
plt.hist(df.Fare)
plt.title("The histogram of Fare")
plt.xlabel("Fare")
plt.ylabel("Frequency")

5 柱状图

python 复制代码
import matplotlib.pyplot as plt  
  
# 数据  
# 每一个柱子的名字
bars = ('A', 'B', 'C', 'D', 'E')  
# 横坐标每一个数字,实际的数字
x_pos = range(len(bars))  
# 柱子的高度
height = [3, 7, 2, 5, 6]  
  
# 创建柱状图  
# 第一个参数写横坐标的真实数字,第二个参数写柱子的高度
plt.bar(x_pos, height)  
  
# x轴上  每个真实的数字,对应的替换的字母名字
plt.xticks(x_pos, bars)  
  
# 显示图像  
plt.show()
相关推荐
蒋星熠4 分钟前
Flutter跨平台工程实践与原理透视:从渲染引擎到高质产物
开发语言·python·算法·flutter·设计模式·性能优化·硬件工程
翻滚丷大头鱼28 分钟前
Java 集合Collection—List
java·开发语言
爬虫程序猿1 小时前
《京东商品详情爬取实战指南》
爬虫·python
aramae1 小时前
C++ -- 模板
开发语言·c++·笔记·其他
胡耀超1 小时前
4、Python面向对象编程与模块化设计
开发语言·python·ai·大模型·conda·anaconda
索迪迈科技1 小时前
java后端工程师进修ing(研一版 || day40)
java·开发语言·学习·算法
Zz_waiting.2 小时前
Javaweb - 14.6 - Vue3 数据交互 Axios
开发语言·前端·javascript·vue·axios
萌新小码农‍2 小时前
Java分页 Element—UI
java·开发语言·ui
大佬,救命!!!2 小时前
整理python快速构建数据可视化前端的Dash库
python·信息可视化·学习笔记·dash·记录成长
孔丘闻言2 小时前
python调用mysql
android·python·mysql