7

I am using matplotlib in Python 2.7 to plot a filled contour plot. I want to overlay this over an image, so I am using the alpha keyword to make the plot semi-transparent. When I do this, the body of the contours are the correct transparency, but contourf() plots unwanted lines on the boundaries between different levels. I have attempted to eliminate them with the keyword argument linecolor='none', but this has not helped.

Code:

CS = map.contourf(xi, yi, zi, 25, alpha=0.3, linecolor='none')

A link to an image example of the problem; I would like the filled contours to meet without the bright boundary lines:

Any help or insight into this problem is appreciated.

Mohsen Safari
  • 6,669
  • 5
  • 42
  • 58
user2130042
  • 73
  • 1
  • 3

1 Answers1

12

Try turn on antialiased=True:

x, y = np.mgrid[-1:1:100j, -1:1:100j]
contourf(x, y, x**2+y**2 + np.random.rand(100, 100)*0.1, 10, alpha=0.3, antialiased=True)

here is my result:

enter image description here

HYRY
  • 94,853
  • 25
  • 187
  • 187