"So close 🤏🏼 , yet so far ♾️" Explanation and code in description

Описание к видео "So close 🤏🏼 , yet so far ♾️" Explanation and code in description

I am the original creator of this Pi video. This went viral almost on all social media. Got 45 million view on Instagram and 12 million view on Tiktok.

Link to the IG pi post :   / cyrfbptryc9  
Titok Post : https://www.tiktok.com/@thiebo_badmin...

---------------------------------------------------

If you liked this "visualization of pi", I also made an UHD 1440p widescreen version of this pi simulation which is 3 minutes longer. Here is the link , hope you'd engage there too and help that go viral as well ! :)

   • Watch π (Pi) painting "The area of a ...  

---------------------------------------------------

If you are looking for a short explanation of the Post :

The outer arm spins around at a speed, precisely π times faster than the inner arm. But because π is this never-ending, irrational number, that outer arm will never, ever stop at its starting point, no matter how long the video goes on. It's like a forever chase scene where the arm always misses the target line by the tiniest bit, and that bit is basically as thin as it gets.

The Detailed explanation of this Pi post by "angzt" from reddit :

https://www.reddit.com/r/oddlysatisfy...

---------------------------------------------------

Python code for the final drawing made by this mechanism ( Not for the animation ) :

import numpy as np
import matplotlib.pyplot as plt

Create an array of theta values in degrees (e.g., from 0 to 113*360 degrees)
theta_degrees = np.linspace(0, 113*360, 10000)

Convert degrees to radians
theta_radians = np.deg2rad(theta_degrees)

Calculate z(theta) using the formula , 1j is imaginary number
z = np.exp(theta_radians * 1j) + np.exp(np.pi * theta_radians * 1j)

Separate the real and imaginary parts of z
x = np.real(z)
y = np.imag(z)

Create a plot with specific settings
plt.figure(figsize=(10, 10)) # Set a square figure 10x10 inches
plt.plot(x, y, color='white', linewidth=0.5) # Set line color to white and line width to 0.5

plt.gca().set_facecolor('black') # Set background color to black
plt.gca().set_aspect('equal') # Equal aspect ratio
plt.grid(False) # Turn off the grids
plt.xlim(-2.5, 2.5) # X-axis limit
plt.ylim(-2.5, 2.5) # Y-axis limit

plt.show() # Display the plot

Комментарии

Информация по комментариям в разработке