Python实验项目8 :科学计算与可视化

1:创建 numpy 数组。

要求:

1)使用 array()函数、empty()函数、zeros()函数、linspace()函数等创建 numpy 数组。

2)使用 numpy 数组的索引和切片方法访问数组元素。

# 要求:
# (1)使用 array()函数、empty()函数、zeros()函数、linspace()函数等创建 numpy 数组。
# (2)使用 numpy 数组的索引和切片方法访问数组元素。
import numpy as np
arr1=np.array([1,2,3,4,5])#  数组,包括1,2,3,4,5。
arr2=np.empty((3,4))#  3行4列的空矩阵。
arr3=np.zeros((3,4))# 3行4列的0矩阵。
arr4=np.linspace(0,10,5)# 0-10之间的5个数,包括0和10,也包括5,但是不包括10。
print(arr1)
print(arr2)
print(arr3)
print(arr4)

 Python实验项目8 :科学计算与可视化_第1张图片

 

2:阅读程序并分析 numpy 库的运算功能。

要求:(1)写出运行结果。

           (2)分析运算功能。

01 >>> import numpy as np

02 >>> a1=np.array([1,2,3])

03 >>> b1=np.array(([1,2,3],[4,5,6],[7,8,9]))

04 >>> a1+100

05 >>> b1*2

06 >>> a1

07 >>> b1

Python实验项目8 :科学计算与可视化_第2张图片

09 >>> a1+np.array([100,200,300])

10 >>> a1+b1

Python实验项目8 :科学计算与可视化_第3张图片

11 >>> np.sum(b1)

12 >>> np.sum(b1,axis=0)

13 >>> np.sum(b1,axis=1)

分析如下:

Python实验项目8 :科学计算与可视化_第4张图片

 3:绘制散点图。

要求:绘制如图 13-1 所示的余弦三角函数 y=cos(2x)散点图。

提示:使用 import matplotlib.pyplot as plt help(plt.scatter)命令查看绘制散点图的帮助信息。

Python实验项目8 :科学计算与可视化_第5张图片

# 3:绘制散点图。
# 要求:绘制如图 13-1 所示的余弦三角函数 y=cos(2x)散点图。
# 提示:使用 import matplotlib.pyplot as plt 和 help(plt.scatter)命令查看绘制散点图的帮助信息。
import numpy as np
import matplotlib.pyplot as plt
x=np.arange(0,2*np.pi,0.1)
y=np.cos(2*x)
plt.scatter(x,y)
plt.title('y=cos(2x)')
plt.xlabel('x=0~2π')
plt.ylabel('y=-1~1')
plt.grid(True)
plt.show()

Python实验项目8 :科学计算与可视化_第6张图片 

4.绘制y=e-xsin(2πx)如下图所示:

Python实验项目8 :科学计算与可视化_第7张图片

# 4.绘制y=e^(-x)sin(2πx)如下图所示:
import numpy as np
import matplotlib.pyplot as plt
x=np.arange(0,2*np.pi,0.1)
y=np.exp(-x)*np.sin(2*np.pi*x)
plt.scatter(x,y)
plt.plot(x,y)
plt.xlabel('x=0~2π')
plt.ylabel('y=e^(-x)*sin(2πx)')
plt.grid(True)
plt.title('y=e^(-x)*sin(2πx)')
plt.show()

 Python实验项目8 :科学计算与可视化_第8张图片

5.某公司 2017—2020 四年的主营业务和其他业务的销售额分别是[330, 360, 420, 410]和[150, 230, 145, 236](单位万元),绘制条形图。

Python实验项目8 :科学计算与可视化_第9张图片

# 5.某公司 2017—2020 四年的主营业务和其他业务的销售额分别是[330, 360, 420, 410]和[150, 230, 145, 236](单位万元),绘制条形图。
import matplotlib.pyplot as plt
import numpy as np
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
x=np.arange(4)
y1=np.array([330,360,420,410])
y2=np.array([150,230,145,236])
plt.bar(x,y1,width=0.3,label='主营业务',alpha=0.8,color="red")
plt.bar(x+0.3,y2,width=0.3,label='其他业务',alpha=0.8,color="cyan")# alpha设置透明度顺序不能错
plt.xlabel('年度')
plt.ylabel('数量:单位(万元)')
plt.legend()
plt.show()

 Python实验项目8 :科学计算与可视化_第10张图片

6.通过直方图展示正态分布的频数。

Python实验项目8 :科学计算与可视化_第11张图片

 

# 6.通过直方图展示正态分布的频数。
import matplotlib.pyplot as plt
import numpy as np
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
x=np.random.normal(0,1,100000)
plt.hist(x,100,facecolor='b')
plt.title('正态分布直方图')
plt.xlabel('区间')
plt.ylabel('频数(出现的次数)')
plt.show()

 Python实验项目8 :科学计算与可视化_第12张图片

 7.某公司 2017—2020 四年的销售额分别是[330, 360, 420, 1410](单位万元), 绘制饼图。

Python实验项目8 :科学计算与可视化_第13张图片

# 7.某公司 2017—2020 四年的销售额分别是[330, 360, 420, 1410](单位万元), 绘制饼图。
import matplotlib.pyplot as plt
import numpy as np
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
labels = ['2017', '2018', '2019', '2020']
sizes = [330, 360, 420, 1410]
explode = (0, 0, 0, 0.1)
plt.pie(sizes, explode=explode, labels=labels, autopct='%1.1f%%', shadow=True, startangle=90)
plt.axis('equal')
plt.title('饼图示例')
plt.legend()
plt.show()

 Python实验项目8 :科学计算与可视化_第14张图片

 

 

 

你可能感兴趣的:(Python,python,开发语言)