Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

KDE Chart 3D

Signature

sp.build_kde3d_chart(
    title: str,
    x: list[float],
    y: list[float],
    *,
    bandwidth: float = 1.0,
    resolution: int = 50,
    palette: list[int] | None = None,
    bg_color: str = "#1a1a2e",
    width: int = 900,
    height: int = 600,
    x_label: str = "X",
    y_label: str = "Y",
    z_label: str = "Density",
) -> Chart

Aliases: sp.kde3d


Description

2D Kernel Density Estimation rendered as a 3D surface mesh over a grid. Visualizes the joint density of two variables.


Parameters

ParameterTypeDefaultDescription
titlestrrequiredChart title
xlist[float]requiredX sample data
ylist[float]requiredY sample data
bandwidthfloat1.0KDE bandwidth factor
resolutionint50Grid resolution (n × n)
palettelist[int] | NoneNoneColor gradient palette
bg_colorstr"#1a1a2e"Background color
widthint900Canvas width
heightint600Canvas height
x_labelstr"X"X-axis label
y_labelstr"Y"Y-axis label
z_labelstr"Density"Z-axis label

Returns

Chart


Examples

import seraplot as sp
import random
values = (
    [random.gauss(-2, 1) for _ in range(200)] +
    [random.gauss(0, 0.8) for _ in range(200)] +
    [random.gauss(3, 1.2) for _ in range(200)]
)
categories = ["Group A"] * 200 + ["Group B"] * 200 + ["Group C"] * 200
chart = sp.build_kde3d_chart(
    "Density by Group",
    values,
    categories=categories,
)
const sp = require('seraplot');
import random
const values = (
    [random.gauss(-2, 1) for _ in range(200)] +
    [random.gauss(0, 0.8) for _ in range(200)] +
    [random.gauss(3, 1.2) for _ in range(200)]
)
const categories = ["Group A"] * 200 + ["Group B"] * 200 + ["Group C"] * 200
const chart = sp.build_kde3d_chart("Density by Group",
values,
{
    categories: categories
})
import * as sp from 'seraplot';
import random
const values = (
    [random.gauss(-2, 1) for _ in range(200)] +
    [random.gauss(0, 0.8) for _ in range(200)] +
    [random.gauss(3, 1.2) for _ in range(200)]
)
const categories: string[] = ["Group A"] * 200 + ["Group B"] * 200 + ["Group C"] * 200
const chart = sp.build_kde3d_chart("Density by Group",
values,
{
    categories: categories
})
▶ Live Preview

See also

Signature

sp.build_kde3d_chart(
    title: str,
    x: list[float],
    y: list[float],
    *,
    bandwidth: float = 1.0,
    resolution: int = 50,
    palette: list[int] | None = None,
    bg_color: str = "#1a1a2e",
    width: int = 900,
    height: int = 600,
    x_label: str = "X",
    y_label: str = "Y",
    z_label: str = "Density",
) -> Chart

Aliases: sp.kde3d


Description

Estimation par noyau 2D rendue comme une surface maillage 3D. Visualise la densité jointe de deux variables.


Paramètres

ParamètreTypeDéfautDescription
titlestrrequisTitre du graphique
xlist[float]requisDonnées X
ylist[float]requisDonnées Y
bandwidthfloat1.0Facteur de bande passante KDE
resolutionint50Résolution de la grille (n × n)
palettelist[int] | NoneNonePalette de gradient de couleur
bg_colorstr"#1a1a2e"Couleur de fond
widthint900Largeur du canvas
heightint600Hauteur du canvas
x_labelstr"X"Étiquette de l'axe X
y_labelstr"Y"Étiquette de l'axe Y
z_labelstr"Density"Étiquette de l'axe Z

Retourne

Chart


Exemples

import seraplot as sp
import random

x = [random.gauss(0, 1) for _ in range(400)]
y = [xi * 0.5 + random.gauss(0, 0.5) for xi in x]

chart = sp.build_kde3d_chart(
    "Densité jointe X vs Y",
    x=x, y=y,
    x_label="X", y_label="Y", z_label="Densité",
)

Voir aussi