Python中Matplotlib数据可视化基础

本文介绍了如何使用Matplotlib进行Python数据可视化,包括折线图、柱状图、散点图的创建,pandas内置绘图,饼状图的制作,以及添加文字说明、图例和多图展示。通过实例演示了关键API的使用和中文显示设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

Matplotlib数据可视化基础

plt.plot()折线图

 plt.bar()柱状图

 plt.scatter()散点图

 pandas自带的绘图工具

 plt.pie()饼状图

添加文字说明

 两条线添加图例

 中文显示异常

绘制多图

subplot()


Matplotlib数据可视化基础

前提:使用Python自带的可视化库叫做matplotlib 

import matplotlib.pyplot as plt

import numpy as np
import pandas as pd

%matplotlib inline

plt.plot()折线图

x = [1,4,8]
y = [2,5,7]
plt.plot(x,y)

 -默认的实线

color颜色

 linewidth线宽度

 '--'短划线

  '-'实线

 ':'虚线

 'step'阶梯图

 'None’

x1 = np.arange(10)
y1 = x1**2
#-默认的实线,color颜色  linewidth线宽度  '--'短划线   '-'实线  ':'点  'step'  'None'
plt.plot(x1,y1,color='blue',linewidth=5,linestyle =':')

plt.plot(x,y,color='red')#将上一个折线图添加到这边

plt.show()#可省略,建议写上,强制前面的绘图代码把图像渲染出来

 plt.bar()柱状图

条形图的横轴可以是字符串表示,起到标识作用 

#条形图的横轴可以是字符串表示,起到标识作用
x = ['A','B','C','D','E','F','G']
y = [190,200,178,166,205,123,145]
#plt.bar(x,y,color=['red','blue','pink'])
#或者
plt.bar(x,y,color=np.random.random((7,3)))

 

 plt.scatter()散点图

#横轴数据
tips = [1,3,5,6,7,9]
#纵轴数据
pay = [123,145,156,189,198,122]

#大小
size = np.array([1,2,4,6,10,16])

plt.scatter(tips,pay,s=size*100,color='pink')

 


 pandas自带的绘图工具

#DataFrame二维
df = pd.DataFrame(data=np.random.randint(10,30,size=(10,3)),columns=['A','B','C'])
df

 

df.plot(kind='bar')

 

 转置操作T

#转置操作
df.T.plot(kind='bar')

 

 plt.pie()饼状图

#Series一维
s = pd.Series(data=np.random.randint(10,30,size=3),index=[1,2,3])
s.plot(kind='pie')


 添加文字说明

#linspace  从0到2Π拆分出100个数,等差数列
x = np.linspace(0,2*np.pi,100)
y = np.sin(x)
#label就是图例要展示的文字信息
plt.plot(x,y,color='pink',label='line of sin',linestyle=':')

#允许展示图例
plt.legend()

#横轴标题
plt.xlabel('X')
#纵轴标题
plt.ylabel('Y')
#画布 标题
plt.title('y=sin(x)')

 两条线添加图例

#两条线添加图例
plt.plot(x,np.sin(x),label='sin')
plt.plot(x,np.cos(x),label='cos')

plt.legend(loc='upper right')

 中文显示异常

#中文显示异常
plt.rcParams['font.sans-serif']='SimHei'
plt.rcParams['axes.unicode_minus']=False
#plt.rcParams符号显示查找命令符找到axes.unicode_minus
plt.plot(x,y,label='正弦函数')

plt.title('正弦函数图')
plt.legend()

绘制多图

subplot()

 subplot(abc)    a行数   b列数    c子图序号,得出来的结果就像这样。

#调整画板大小
plt.figure(figsize=(12,9))

#分别获取字画布,再绘图
ax1 = plt.subplot(221)
ax1.plot(x,y)

ax2 = plt.subplot(222)
ax2.plot(x,np.cos(x))

ax3 = plt.subplot(223)
plt.bar(['A','B','C'],[1,2,3])

ax4 = plt.subplot(224)
plt.bar(['D','E','F'],[3,6,9])

这些都是基础知识,还需好好掌握,一起加油吧!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

五彩大铁猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值