【python】用numpy随机生成一元(多元)数据;如线性、指数、三角函数,或者多种样式结合

用numpy随机生成一元(多元)数据;如线性、指数、三角函数,或者多种样式结合

题目

1.用numpy随机生成一元(多元)数据;如线性、指数、三角函数,或者多种样式结合;
2.画出数据散点图和模型曲线。
a)设置xy轴的坐标范围;
b)散点图和模型曲线用不同颜色

代码

from mpl_toolkits.mplot3d import Axes3D 
import numpy as np
from matplotlib import pyplot as plt
import random

fig = plt.figure()
ax = Axes3D(fig)
x=np.arange(-30,30,1)
y=np.arange(-30,30,1)
x, y = np.meshgrid(x, y)
z=x**2*y+y**2*x

ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('Z')

ax.plot_surface(x, y, z, cmap='rainbow')

# 散点图
for i in range(0,60):
	for j in range(0,60):
		x[i][j]=x[i][j]+random.uniform(-5,5)
		y[i][j]=y[i][j]+random.uniform(-5,5)
		z[i][j]=z[i][j]+random.uniform(-5,5)

# 散线图
# for i in range(0,60):
# 	x[i]=x[i]+random.uniform(-5,5)
# 	y[i]=y[i]+random.uniform(-5,5)
# 	z[i]=z[i]+random.uniform(-5,5)

ax.scatter(x, y, z,marker=".",color="red")
plt.show()

结果

在这里插入图片描述
结果上图所示,其中红点为三位平面周围随机生成的散点图。由于二维坐标系下散点图较容易实现,因此我实现了较之更为复杂的三维平面散点图拟合。初始的三维平面方程为 z=xxy+yyx,如下图
在这里插入图片描述
由于初始图像为三维平面,既然能够生成一维散点图,那么必然可以生成二维散线图。
在这里插入图片描述
在实现过程中,我们通过meshgrid函数实现对x与y坐标的存储,其存储原理如上图。因此我们可以通过然x或y二维数组中每一行加上同样的任意随机数,达到生成随机曲线的目的,最终结果如下图所示。
在这里插入图片描述

随机数

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值