I want these two contours to be plotted in a single figure and filled the inner regions of each contour with different colors. The problem that I am facing is the larger contour shading overshadows the smaller one. I want the inner region to be red (for x1) and the rest of the inner region for the larger contour (for x2) to be blue. How do I achieve that?
x1 = ContourPlot[{a^2 + b^2 + a*b}, {a, -7, 7}, {b, -7, 7}, Contours -> {4},
ContourShading -> {Red, None}, MaxRecursion -> 5,
Epilog -> {Black, PointSize[0.015], Point[{0, 0}]},
ContourStyle -> {Red}, Frame -> True, FrameLabel -> {"a", "b"}];
x2 = ContourPlot[{a^2 + b^2}, {a, -7, 7}, {b, -7, 7}, Contours -> {9},
ContourShading -> {Blue, None}, MaxRecursion -> 5,
Epilog -> {Black, PointSize[0.015], Point[{0, 0}]},
ContourStyle -> {Blue}, Frame -> True, FrameLabel -> {"a", "b"}]
x4 = Show[{x1, x2}]
RegionPlot[]
?RegionPlot[{a^2 + b^2 <= 9, a^2 + b^2 + a b <= 4}, {a, -7, 7}, {b, -7, 7}, BoundaryStyle -> Blue, Epilog -> {Black, PointSize[0.015], Point[{0, 0}]}, PlotStyle -> {Blue, Red}]
$\endgroup$Show
:x4 = Show[{x2, x1}]
$\endgroup$