Sine-Map

Sat 17 May 2025

from bokeh.plotting import figure, output_file, show
from bokeh.io import output_notebook
from bokeh.models import ColumnDataSource
# Set Bokeh output to notebook
output_notebook()
Loading BokehJS ...
import numpy as np
from bokeh.plotting import figure, show

# Sine map parameters
a = 0.9  # Control parameter (chaotic behavior when near 1)

# Number of iterations and initial condition
num_points = 10000
x0 = 0.5  # Initial condition

# Generate points for the Sine map
x = [x0]
for _ in range(num_points - 1):
    x_new = a * np.sin(np.pi * x[-1])
    x.append(x_new)

# Create corresponding y values for visualization
y = np.arange(len(x))

# Split data into segments for multi-line
num_segments = 7
xs = np.array_split(x, num_segments)
ys = np.array_split(y, num_segments)

# Define a color palette
colors = ["#FFEDA0", "#FED976", "#FEB24C", "#FD8D3C", "#FC4E2A", "#E31A1C", "#BD0026"]

# Create the Bokeh figure
p = figure(title="Sine Map Visualization",
           background_fill_color="#f9f9f9",
           x_axis_label="Iteration",
           y_axis_label="Value",
           match_aspect=True)

# Add the multi_line glyph
p.multi_line(xs=ys, ys=xs, line_color=colors, line_alpha=0.8, line_width=1.5)

# Show the plot
show(p)


Score: 5

Category: bokeh