# How to solve the sawtooth when plot?

ContourPlot[(x^2 + (y + 1)^2 - 2)^3 == x^2*(y + 1)^3, {x, -3.2,
3.2}, {y, -3.2, 3.2}, ContourStyle -> {Black}, Axes -> False,
Frame -> False, ImageSize -> {1000, 1000}]


You will find output is not smooth as expect,even I output as EPS format.
How to solve this problem? Or other software suggestion.
Thanks!

• try adding option PlotPoints->50 Jan 15, 2018 at 9:30
• try PlotPoints -> 150 and/or MaxRecursion -> 5?
– kglr
Jan 15, 2018 at 9:30
• Even I set PlotPoints -> 400, MaxRecursion -> 10 ,still can see a breakpoint Jan 15, 2018 at 10:08

You can also use Reduce and select real solutions (in addition to increasing PlotPoints with/without increasing MaxRecursion):

ans = y /. {ToRules[
Reduce[(x^2 + (y + 1)^2 - 2)^3 == x^2*(y + 1)^3, {x, y}]]};
f[a_?NumericQ, n_] := ans[[n]] /. x -> a
Plot[{f[x, 1], f[x, 2]}, {x, -3, 3}, Axes -> False, PlotStyle -> Black]


• You can find there's a break point Jan 15, 2018 at 9:48
• @kittygirl I take your point. I did not increase PlotPoints for this (as I suggested in my comment for ContourPlot). You may prefer to do that. Good luck. Merely wanted to illustrate other ways. Jan 15, 2018 at 9:50

You should add the PlotPoints->50 in your plot definition. You can increase the number to more than 50 if you need higher smoothing..

• even I set Plotponts to 250, still has break point at H:722.86, W:408.17 px. At that point, the curve is not smooth. Jan 15, 2018 at 9:50