实验目的
- 1.学习绘图库Matplotlib的使用。
- 2.掌握绘图库常见的图形类型,常用的线型、颜色、标记符号。
- 3.掌握多子图绘制的方法
实验内容
启动Spyder,在Spyder环境下编写完整程序完成下列练习。
实验1
利用[2, 3, 5, 10, 8]列表数据绘制折线图、柱形图、饼图。
import matplotlib.pyplot as plt # 导入plt
plt.rcParams['font.sans-serif'] = ['SimHei'] # 指定中文黑体字体
plt.rcParams['axes.unicode_minus'] = False # 确保-负号显示正常
x = [2, 3, 5, 10, 8]
labels = list('abcde')
plt.plot(x, 'b-') # 折线图
plt.figure() # 新建图形
plt.bar(labels, x) # 柱形图
plt.figure() # 新建图形
explode = [0, 0, 0.1, 0.2, 0]
plt.pie(x, explode=explode, labels=labels, autopct='%1.1f') # 饼图
plt.show() # 显示图形
实验2
生成1000个N(1, 10)正态分布的随机小数,绘制箱线图。
注:N(1,10) 则 scale= 10**(1/2)
x=np.random.normal(1, 10**(1/2),1000)
plt.boxplot(x)
print('方差:', x.var()) # 方差应近似10
实验3
绘制如图所示的多子图。
x = np.arange(1,100)
Plt.subplot(2,2,1)
plt.plot(x, x) # 2行x2列图形的第一个子图
Plt.subplot(2,2,2) # 2行x2列图形的第二个子图
plt.plot(x, -x)
Plt.subplot(2, 2, 3) # 2行x2列图形的第三个子图
plt.plot(x, x**2)
Plt.subplot(2, 2, 4) # 2行x2列图形的第四个子图
Plt.plot(x, np.log(x))

实验4
利用matplotlib库中的pyplot模块,绘制x在[-10,10]取值区间上的函数
![]()
一阶导数和二阶导数的图形,要求:
(1)绘制三个子图,分别放置上述三个图形
(2)第一个子图区域,标题为Polynomial,使用红色实线绘制
(3)第二个子图区域,标题为First Derivative,使用蓝色虚线绘制
(4)第三个子图区域,标题为Second Derivative,使用绿色实心圆点绘制
import matplotlib.pyplot as plt
import matplotlib
import numpy as np
matplotlib.rcParams['font.family']='SimHei'
matplotlib.rcParams['axes.unicode_minus']=False
plt.suptitle("f(x)函数、一阶导数、二阶导数折线图")
plt.subplot(3,1,1)
plt.title("Polynomial")
plt.xlim(-10,10)
plt.xticks([-10,-9,-8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9,10])#设置x轴刻度
x=np.arange(-10,10)
y1=x*x*x+2*x*x+3*x+4
plt.plot(x,y1,"g-")
plt.subplot(3,1,2)
plt.title("First Derivativ")
plt.xlim(-10,10)
plt.xticks([-10,-9,-8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9,10])#设置x轴刻度
x=np.arange(-10,10)
y2=3*x*x+4*x+3
plt.plot(x,y2,"b:")
plt.subplot(3,1,3)
plt.title("Second Derivative")
plt.xlim(-10,10)
plt.xticks([-10,-9,-8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9,10])#设置x轴刻度
x=np.arange(-10,10)
y2=4*x+4
plt.plot(x,y2,"g.")
plt.show()
运行效果图:
实验5
教材213页【例9-3】
import matplotlib.pyplot as plt
i


1131

被折叠的 条评论
为什么被折叠?



