用python在xy轴均为0-10的二维平面上在一个三角形范围随机生成两百个数据
时间: 2023-06-09 14:06:36 浏览: 110
好的,我理解了你的要求。下面是Python的代码可以在xy轴均为0-10的二维平面上在一个三角形范围随机生成两百个数据:
```python
import random
# 生成一个三角形的顶点坐标
triangle_points = [(2, 2), (8, 2), (5, 8)]
# 生成随机数据
data = []
for i in range(200):
# 随机生成一个三角形内的点
while True:
x = random.uniform(0, 10)
y = random.uniform(0, 10)
p1, p2, p3 = triangle_points
# 使用叉乘判断当前点是否在三角形内
if ((p2[0] - p1[0]) * (y - p1[1]) - (p2[1] - p1[1]) * (x - p1[0])) * \
((p3[0] - p2[0]) * (y - p2[1]) - (p3[1] - p2[1]) * (x - p2[0])) * \
((p1[0] - p3[0]) * (y - p3[1]) - (p1[1] - p3[1]) * (x - p3[0])) > 0:
data.append((x, y))
break
print(data)
```
这段代码会生成包含200个点的列表,这些点的坐标在三角形范围内随机生成。
阅读全文