Platform
Resources
Pricing
Sign in
Get started
D3
Bring your data to life.
Workspace
Fork
Public
d3-interpolate
By
Fil
Edited
Oct 24, 2023
ISC
Fork of
d3.interpolateArray, d3.interpolateObject
10 stars
d3-interpolate
d3.interpolateNumberArray
Smooth zooming
d3.interpolate
d3.interpolateBasis, d3.interpolateBasisClosed
d3.piecewise
d3.interpolateDiscrete
d3.interpolateZoom
d3.quantize
d3.interpolateTransformCss
d3.interpolateArray, d3.interpolateObject
d3.interpolateNumber, d3.interpolateRound
d3.interpolateDate
d3.interpolateString
Insert cell
Insert cell
Insert cell
{
const
interpolator
=
d3
.
interpolateTransformCss
(
"translateY(12px) scale(2)"
,
"translateX(30px) rotate(5deg)"
)
;
return
interpolator
(
0.5
)
;
}
Insert cell
{
const
interpolator
=
d3
.
interpolateTransformCss
(
"matrix(1.0, 2.0, 3.0, 4.0, 5.0, 6.0)"
,
"translate(3px,90px)"
)
;
return
interpolator
(
0.5
)
;
}
Insert cell
{
const
interpolator
=
d3
.
interpolateTransformCss
(
"translateY(12px) scale(2)"
,
"translateX(30px) rotate(5deg)"
)
;
return
interpolator
(
0.5
)
;
}
Insert cell
Insert cell
interpolatorCss
=
d3
.
interpolateTransformCss
(
"scale(1)"
,
// no transform
"skewX(60deg) translateX(800px)"
)
Insert cell
Insert cell
interpolatorCss
(
t
)
Insert cell
<
div
style
=
"transform: ${interpolatorCss(t)}"
>
Hello, interpolate me!
</
div
>
Insert cell
Insert cell
interpolatorSvg
=
d3
.
interpolateTransformSvg
(
"skewX(-60)"
,
"skewX(60) translate(280,0)"
)
Insert cell
interpolatorSvg
(
t
)
Insert cell
svg
`<svg width=${
width
} height=60>
<g transform="${
interpolatorSvg
(
t
)
}">
<text y=20>Hello, SVG property</text>
</g>
<style>.t { transform: ${
interpolatorCss
(
t
)
} }</style>
<g class=t>
<text y=40>Hello, SVG2 CSS</text>
</g>
</svg>`
Insert cell
Insert cell
{
const
interpolator
=
d3
.
interpolateString
(
"translate(20, 40)"
,
"translate(30, 60)"
)
;
return
interpolator
(
0.5
)
;
}
Insert cell
Insert cell
d3
=
require
(
"d3-interpolate@2"
)
Insert cell
Purpose-built for displays of data
Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.
Try it for free
Learn more
Compare fork
Fork
View
Export
Edit
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Edit
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Edit
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
interpolatorCss
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
t
Edit
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Edit
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
interpolatorSvg
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Edit
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
Edit
Add comment
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML
d3
Add comment
Copy import
Select
Duplicate
Copy link
Embed
Delete
JavaScript
Markdown
HTML