I have a series of data points describing the boundary of some region. Using ListCurvePathPlot
, I have an easy way to get a nice curve interpolating this boundary (rather than splitting the boundary up into "upper" and "lower" curves and using regular function interpolation, which looks much worse). An example is given in the plot below.
My question is: is there an easy way to get the interior region bounded by this to be filled in?
The curve isn't closed but we can easily close off the right hand side.
Here is the Plot
function analogue of what I want to have for my curve
Plot[{0.5 + x^(1/3), 0.5 - x^(1/3)}, {x, 0, 1},
Filling -> {1 -> {2}}, PlotStyle -> Red]
Edit: If you want to recreate the first figure as a minimal working example, the points I used are:
points = {{0.557, 0.999072}, {0.7, 0.985086}, {0.69, 0.986477},
{0.6,0.987449}, {0.59, 0.987258}, {0.58, 0.987789},
{0.68, 0.987633}, {0.67, 0.988555}, {0.66, 0.989164},
{0.65, 0.989422}, {0.64, 0.989367}, {0.57, 0.98998},
{0.56, 0.995297}, {0.63, 0.989039}, {0.62, 0.988555},
{0.61, 0.987953}, {0.557, 1.0037}, {0.6, 1.01934},
{0.59, 1.01729}, {0.58, 1.01505}, {0.7, 1.06133},
{0.69, 1.0558}, {0.65, 1.034}, {0.64, 1.02983},
{0.63, 1.02643}, {0.62, 1.0237}, {0.61, 1.02138},
{0.68, 1.05046}, {0.67, 1.04468}, {0.66, 1.03896},
{0.57, 1.01214}, {0.56, 1.00701}};
and the code is simply:
Show[
ListPlot[{points}, PlotStyle -> Red],
ListCurvePathPlot[points, PlotStyle -> {Red, Thick}]]