Spaces:
Sleeping
Sleeping
| import gradio as gr | |
| import numpy as np | |
| import seaborn as sns | |
| import matplotlib.pyplot as plt | |
| sns.set_theme(style="dark") | |
| def generate_plot(): | |
| # Simulate data from a bivariate Gaussian | |
| n = 10000 | |
| mean = [0, 0] | |
| cov = [(2, .4), (.4, .2)] | |
| rng = np.random.RandomState(0) | |
| x, y = rng.multivariate_normal(mean, cov, n).T | |
| # Create the plot | |
| fig, ax = plt.subplots(figsize=(6, 6)) | |
| sns.scatterplot(x=x, y=y, s=5, color=".15", ax=ax) | |
| sns.histplot(x=x, y=y, bins=50, pthresh=.1, cmap="mako", ax=ax) | |
| sns.kdeplot(x=x, y=y, levels=5, color="w", linewidths=1, ax=ax) | |
| return fig | |
| # Gradio interface | |
| demo = gr.Interface( | |
| fn=generate_plot, | |
| inputs=[], | |
| outputs=gr.Plot(label="Bivariate Gaussian Plot"), | |
| title="Bivariate Distribution Visualizer", | |
| description="Generates a scatterplot, histogram, and KDE contours from a simulated bivariate Gaussian distribution." | |
| ) | |
| demo.launch() |