Now the CPT plot components use Observable Plot which is nice and works well. Plot is smart and chooses the x axis limits automatically. For comparison between charts, a user would need to option to manually set the range for data group.
For more advanced features like y axis zooming, a more custom D3.js-based component can be considered.
Take inspiration from GeoLib+ CPT plot, which looks like a more traditional industry chart with dual-or-more-axes. Dual-axes are considered a dodgy practice in data visualization but seem to be common in CPT plots in geotechnical engineering.
Or BROLoket

Now the CPT plot components use Observable Plot which is nice and works well. Plot is smart and chooses the x axis limits automatically. For comparison between charts, a user would need to option to manually set the range for data group.
For more advanced features like y axis zooming, a more custom D3.js-based component can be considered.
Take inspiration from GeoLib+ CPT plot, which looks like a more traditional industry chart with dual-or-more-axes. Dual-axes are considered a dodgy practice in data visualization but seem to be common in CPT plots in geotechnical engineering.
Or BROLoket