Skip to content

Add PCHIP interpolation to line visualizations - #2063

Open
NAThompson wants to merge 1 commit into
silx-kit:mainfrom
NAThompson:feat/pchip-interpolation
Open

NAThompson wants to merge 1 commit into
silx-kit:mainfrom
NAThompson:feat/pchip-interpolation

Conversation

@NAThompson

Copy link
Copy Markdown
Contributor

Linear interpolation makes sparse, irregular samples (e.g. adaptive ODE output) look jagged; PCHIP (Moler, Numerical Computing with Matlab §3.4) is $C^1$ and never overshoots the data. The vertex shader evaluates the cubic from one x, y, z, slope per point, drawing only as many segments per interval as the zoom needs; memory and frame time match linear at $10^6$ points. Closes #1945.

@NAThompson
NAThompson force-pushed the feat/pchip-interpolation branch 2 times, most recently from 95fddc6 to 7825743 Compare September 29, 2026 02:06
Linear interpolation makes sparse, irregular samples (e.g. adaptive ODE output) look jagged; PCHIP (Moler, NCM §3.4) is $C^1$ and never overshoots the data.
The vertex shader evaluates the cubic from one `x, y, z, slope` per point, subdividing each interval only as far as a 1 px error bound needs at the current zoom.
Closes silx-kit#1945.
@NAThompson
NAThompson force-pushed the feat/pchip-interpolation branch from 7825743 to 7fd7a1e Compare September 29, 2026 15:10

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

PCHIP Interpolation of 1D datasets

1 participant