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)

 

 

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

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

10 >>> a1+b1

11 >>> np.sum(b1)

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

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

分析如下:

 3:绘制散点图。

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

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

# 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()

 

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

# 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()

 

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

# 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()

 

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

 

# 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()

 

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

# 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()

 

 

 

 

  • 11
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值