Matplotlib基础绘图函数

本文详细介绍了使用Python的Matplotlib库进行数据可视化的方法,包括饼图、直方图、极坐标图和散点图的绘制过程及参数设置,适合初学者快速上手。

pyplot饼图的绘制

import matplotlib.pyplot as plt

labels='Frogs','Hogs','Dogs','Logs'
sizes=[15,30,45,10]
explode=(0,0.1,0,0)     #第二个突出显示

plt.pie(sizes,explode=explode,labels=labels,autopct='%1.1f%%',shadow=False,startangle=90)

plt.show()

加入如下语句可使图像变为正圆

plt.axis=('equal')

pyplot直方图的绘制

import matplotlib.pyplot as plt
import numpy as np
np.random.seed(0)
mu,sigma=100,20      #均值和标准差
a=np.random.normal(mu,sigma,size=100)

plt.hist(a,20,normed=1,histtype='stepfilled',facecolor='b',alpha=0.75)
#第二个参数bin,直方图的个数
plt.title('Histogram')

plt.show()

plt.hist参数:

arr: 需要计算直方图的一维数组

bins: 直方图的柱数,可选项,默认为10

normed: 是否将得到的直方图向量归一化。默认为0

facecolor: 直方图颜色

edgecolor: 直方图边框颜色

alpha: 透明度

histtype: 直方图类型,‘bar’, ‘barstacked’, ‘step’, ‘stepfilled’

pyplot极坐标图的绘制

import matplotlib.pyplot as plt
import numpy as np

N=20
theta=np.linspace(0.0,2*np.pi,N,endpoint=False)
radii=10*np.random.rand(N)         #弧度
width=np.pi/4*np.random.rand(N)    #扇形弧长
ax=plt.subplot(111,projection='polar')
bars=ax.bar(theta,radii,width=width,bottom=0.0)

for r,bar in zip(radii,bars):
    bar.set_facecolor(plt.cm.virdis(r/10.))
    bar.set_alpha(0.5)

plt.show()

面向对象绘制极坐标

import matplotlib.pyplot as plt
import numpy as np

N=10
theta=np.linspace(0.0,2*np.pi,N,endpoint=False)
radii=10*np.random.rand(N)
width=np.pi/2*np.random.rand(N)
ax=plt.subplot(111,projection='polar')
bars=ax.bar(theta,radii,width=width,bottom=0.0)

for r,bar in zip(radii,bars):
    bar.set_facecolor(plt.cm.virdis(r/10.))
    bar.set_alpha(0.5)

plt.show()

 

pyplot散点图绘制

import matplotlib.pyplot as plt
import numpy as np

fig,ax=plt.subplots()
ax.plot(10*np.random.randn(100),10*np.random.randn(100),'o')
ax.set_title('Simple Scatter')

plt.show()

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Matplotlib 是 Python 中一个强大的绘图库,以下是一些常用的绘图函数: ### 基本绘图函数 - `plt.plot()`:用于绘制折线图,可以绘制一维或多维数据的折线。 ```python import matplotlib.pyplot as plt import numpy as np x = np.linspace(0, 10, 100) y = np.sin(x) plt.plot(x, y) plt.show() ``` - `plt.scatter()`:用于绘制散点图,展示数据点的分布。 ```python import matplotlib.pyplot as plt import numpy as np x = np.random.rand(50) y = np.random.rand(50) plt.scatter(x, y) plt.show() ``` - `plt.bar()`:用于绘制条形图,可用于比较不同类别数据的大小。 ```python import matplotlib.pyplot as plt categories = ['A', 'B', 'C', 'D'] values = [20, 35, 30, 25] plt.bar(categories, values) plt.show() ``` - `plt.hist()`:用于绘制直方图,展示数据的分布情况。 ```python import matplotlib.pyplot as plt import numpy as np data = np.random.randn(1000) plt.hist(data, bins=30) plt.show() ``` ### 图形设置函数 - `plt.xlabel()` 和 `plt.ylabel()`:用于设置 x 轴和 y 轴的标签。 ```python import matplotlib.pyplot as plt import numpy as np x = np.linspace(0, 10, 100) y = np.sin(x) plt.plot(x, y) plt.xlabel('X-axis') plt.ylabel('Y-axis') plt.show() ``` - `plt.title()`:用于设置图形的标题。 ```python import matplotlib.pyplot as plt import numpy as np x = np.linspace(0, 10, 100) y = np.sin(x) plt.plot(x, y) plt.title('Sine Wave') plt.show() ``` ### 子图绘制函数 - `plt.subplot()`:用于创建多个子图。 ```python import matplotlib.pyplot as plt import numpy as np x = np.linspace(0, 10, 100) y1 = np.sin(x) y2 = np.cos(x) plt.subplot(2, 1, 1) plt.plot(x, y1) plt.title('Sine') plt.subplot(2, 1, 2) plt.plot(x, y2) plt.title('Cosine') plt.show() ``` - `plt.subplots()`:更高级的子图创建方式,返回一个包含图形和子图数组的元组。 ```python import matplotlib.pyplot as plt import numpy as np x = np.linspace(0, 10, 100) y1 = np.sin(x) y2 = np.cos(x) fig, axes = plt.subplots(2, 1) axes[0].plot(x, y1) axes[0].set_title('Sine') axes[1].plot(x, y2) axes[1].set_title('Cosine') plt.show() ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值