IMO, ваш подход не совсем соответствует теме (предполагаемой) темы. На самом деле, речь идет о вычислении pi
по отношению случайно распределенных точек в (четверти) окружности к квадрату.
Дело здесь не в том, чтобы вычислять координаты точек, а в том, чтобы они былираспределяется совершенно случайно. И после этого вы можете пойти и решить нанести на карту любой цвет, какой захотите, с любым базовым правилом или алгоритмом.
Короче, таков мой подход:
import numpy as np
import matplotlib.pyplot as plt
x = np.random.random(500)
y = np.random.random(500)
plt.xlim(0, 1)
plt.ylim(0, 1)
c = np.where(x**2 + y**2 < 1, 'r', 'b')
plt.scatter(x, y, c=c)
plt.gca().set_aspect(1)
plt.show()
для полноты примера предполагаемой темы:
for i in range(1,9):
x = np.random.random(10**i)
y = np.random.random(10**i)
d = np.where(x**2 + y**2 < 1, 1, 0)
print(f'{10**i:>9} points: {4*np.sum(d)/d.size}')
# 10 points: 2.8
# 100 points: 3.08
# 1000 points: 3.076
# 10000 points: 3.1556
# 100000 points: 3.14456
# 1000000 points: 3.141884
# 10000000 points: 3.142634
# 100000000 points: 3.14158668