I have obtained the plot shown below using

ListLogLogPlot[Table[{Abs[a1[[i]]], Abs[a2[[i]]]}, {i, 400}]

I want to fill the whole region containing the scattered points as shown by the lines I have drawn by hand. Is it possible?

enter image description here

The appearance of the scattered points, themselves, is not mandatory in the plot.

I want to produce a similar kind of smooth plot like this.Ignore the legend "Normal"


closed as off-topic by corey979, m_goldberg, MarcoB, bbgodfrey, Henrik Schumacher Mar 28 at 9:31

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "This question cannot be answered without additional information. Questions on problems in code must describe the specific problem and include valid code to reproduce it. Any data used for programming examples should be embedded in the question or code to generate the (fake) data must be included." – m_goldberg, MarcoB, bbgodfrey, Henrik Schumacher
If this question can be reworded to fit the rules in the help center, please edit the question.

  • $\begingroup$ You are much more likely to get help if you supplied the data that can be used to reproduce your plot. Also, unless you can describe how to generate the boundary line mathematically or in code, there is no answer. $\endgroup$ – m_goldberg Mar 27 at 12:41
  • $\begingroup$ I can share data file if you want. Can I give an error to each boundary points and plot it as a boundary line? $\endgroup$ – Pritam Mar 27 at 13:07
  • $\begingroup$ You know the boundary points? Edit your question to include your method for determining them. $\endgroup$ – m_goldberg Mar 27 at 13:30
  • $\begingroup$ I don't know the boundary points. $\endgroup$ – Pritam Mar 27 at 13:32
  • 1
    $\begingroup$ If there was any data to work with I might (a) replace each point by a small disk and (b) fiddle around with Dilation and Erosion until I got either a pleasing result or so frustrated I opened a bottle of scotch. $\endgroup$ – High Performance Mark Mar 27 at 15:21

Given what you have said, the only thing I can think of is to use Mathematica's graphics drawing tools to draw the boundary freehand, extract the boundary points from the modified graphic, and convert it into a polygon. Here is an example.

Contrived data and plot for example.

SeedRandom[42]; data = RandomInteger[99, {100, 2}];
ListPlot[data, AspectRatio -> 1, PlotStyle -> AbsolutePointSize[5]]


I now use the drawing tools to draw a boundary around some points.


I then assign the marked plot to a variable.


Finally, I make a new plot with boundary line converted to a polygon.

markedPlot /. Line[pts___] -> {Blue, Opacity[.4], Polygon[pts]}


  • $\begingroup$ Thank you for ur effort. I have modified the question and added another image which might help you understand my problem. $\endgroup$ – Pritam Mar 27 at 14:45

Not the answer you're looking for? Browse other questions tagged or ask your own question.