使用np.random.uniform()函数在单位圆内随机生成点

该代码使用numpy生成二维空间中单位圆内的随机点,通过计算点到原点的距离并过滤掉距离大于1的点,最终展示这些点在平面图上的分布。利用plt.plot绘制了这些点,并可观察到它们在单位圆内的均匀分布特性。
摘要由CSDN通过智能技术生成
import numpy as np
import matplotlib.pyplot as plt

generate_list = []
number_list_x = []
number_list_y = []
for i in range(10000):
    np.linalg.norm([1,1], ord=2)

    rr = np.random.uniform(low=-0.03, high=0.03, size=[5,750])
    rr = np.random.uniform(low=-1, high=1, size=[2])

    #rr = np.ones([5,2])
    print(np.linalg.norm(rr))

    if np.linalg.norm(rr) > 1:
        continue
    generate_list.append(np.linalg.norm(rr))
    number_list_x.append(rr[0])
    number_list_y.append(rr[1])


plt.figure(figsize=(10,10))
plt.plot(number_list_x, number_list_y, 'ro')
#plt.hist(generate_list, bins=100, density=True)
# count, bins, ignored = plt.hist(number_list_x, bins=100, density=True)
# plt.plot(bins, np.ones_like(bins))

plt.show()

使用

rr = np.random.uniform(low=-1, high=1, size=[2])

在正方体内随机生成点
在这里插入图片描述此时点到正方体中心的距离分布为

在这里插入图片描述使用

    if np.linalg.norm(rr) > 1:
        continue

切出一个圆得到,在一个单位圆内均匀分布的点
在这里插入图片描述
此时点到圆中心的距离分布为
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值