diff --git a/demos/critical_filtering.py b/demos/critical_filtering.py
index bcc6b4ad4c0a20f4251e39d291c2b53919279b19..87494f655fb556226d032b16ed91080e842f9b64 100644
--- a/demos/critical_filtering.py
+++ b/demos/critical_filtering.py
@@ -10,7 +10,7 @@ def plot_parameters(m, t, p, p_d):
     t = t.val.real
     p = p.val.real
     p_d = p_d.val.real
-    ift.plotting.plot(m.real, name='map.pdf')
+    ift.plotting.plot(m.real, name='map.png')
 
 
 class AdjointFFTResponse(ift.LinearOperator):
@@ -88,7 +88,7 @@ if __name__ == "__main__":
     data_power = ift.log(ift.power_analyze(fft(d),
                                            binbounds=p_space.binbounds))
     d_data = d.val.real
-    ift.plotting.plot(d.real, name="data.pdf")
+    ift.plotting.plot(d.real, name="data.png")
 
     IC1 = ift.GradientNormController(verbose=True, iteration_limit=100,
                                      tol_abs_gradnorm=0.1)
diff --git a/demos/log_normal_wiener_filter.py b/demos/log_normal_wiener_filter.py
index 3f7a4c6a7e55aa0a67e212da4a5529e90847dde7..865938e798b16ca2fa40bb5cd569ace4099cc685 100644
--- a/demos/log_normal_wiener_filter.py
+++ b/demos/log_normal_wiener_filter.py
@@ -66,19 +66,19 @@ if __name__ == "__main__":
     # m3 = fft(me3[0].position)
 
     # Plotting
-    ift.plotting.plot(mock_signal.real, name='mock_signal.pdf',
+    ift.plotting.plot(mock_signal.real, name='mock_signal.png',
                       colormap="plasma", xlabel="Pixel Index",
                       ylabel="Pixel Index")
     logdata = np.log(ift.dobj.to_global_data(data.val.real)).reshape(signal_space.shape)
     ift.plotting.plot(ift.Field(signal_space,
                                 val=ift.dobj.from_global_data(logdata)),
-                      name="log_of_data.pdf", colormap="plasma",
+                      name="log_of_data.png", colormap="plasma",
                       xlabel="Pixel Index", ylabel="Pixel Index")
-    # ift.plotting.plot(m1.real,name='m_LBFGS.pdf', colormap="plasma",
+    # ift.plotting.plot(m1.real,name='m_LBFGS.png', colormap="plasma",
     #                   xlabel="Pixel Index", ylabel="Pixel Index")
-    ift.plotting.plot(m2.real, name='m_Newton.pdf', colormap="plasma",
+    ift.plotting.plot(m2.real, name='m_Newton.png', colormap="plasma",
                       xlabel="Pixel Index", ylabel="Pixel Index")
-    # ift.plotting.plot(m3.real, name='m_SteepestDescent.pdf',
+    # ift.plotting.plot(m3.real, name='m_SteepestDescent.png',
     #                   colormap="plasma", xlabel="Pixel Index",
     #                   ylabel="Pixel Index")
 
@@ -90,4 +90,4 @@ if __name__ == "__main__":
 
     sm = ift.FFTSmoothingOperator(signal_space, sigma=0.02)
     variance = sm(proby.diagonal.weight(-1))
-    ift.plotting.plot(variance, name='variance.pdf')
+    ift.plotting.plot(variance, name='variance.png')
diff --git a/demos/paper_demos/cartesian_wiener_filter.py b/demos/paper_demos/cartesian_wiener_filter.py
index d67eac56c8985c3b1917e26eb9aa57d84ad42284..a4dcfda4436e611fddeb34430421642077ab0d89 100644
--- a/demos/paper_demos/cartesian_wiener_filter.py
+++ b/demos/paper_demos/cartesian_wiener_filter.py
@@ -111,7 +111,7 @@ if __name__ == "__main__":
 
     plot_space = ift.RGSpace((N_pixels_1, N_pixels_2))
     sm = ift.FFTSmoothingOperator(plot_space, sigma=0.03)
-    ift.plotting.plot(ift.log(ift.sqrt(sm(ift.Field(plot_space, val=variance.val.real)))), name='uncertainty.pdf',zmin=0.,zmax=3.,title="Uncertainty map",colormap="Planck-like")
-    ift.plotting.plot(ift.Field(plot_space, val=mock_signal.val.real), name='mock_signal.pdf',colormap="Planck-like")
-    ift.plotting.plot(ift.Field(plot_space, val=data.val.real), name='data.pdf',colormap="Planck-like")
-    ift.plotting.plot(ift.Field(plot_space, val=m.val.real), name='map.pdf',colormap="Planck-like")
+    ift.plotting.plot(ift.log(ift.sqrt(sm(ift.Field(plot_space, val=variance.val.real)))), name='uncertainty.png',zmin=0.,zmax=3.,title="Uncertainty map",colormap="Planck-like")
+    ift.plotting.plot(ift.Field(plot_space, val=mock_signal.val.real), name='mock_signal.png',colormap="Planck-like")
+    ift.plotting.plot(ift.Field(plot_space, val=data.val.real), name='data.png',colormap="Planck-like")
+    ift.plotting.plot(ift.Field(plot_space, val=m.val.real), name='map.png',colormap="Planck-like")
diff --git a/demos/paper_demos/wiener_filter.py b/demos/paper_demos/wiener_filter.py
index 16de178476b9fbd1a618a3145562ea595478d97c..9f414b9eb545b31ecb99c99d038bde81f8c21e26 100644
--- a/demos/paper_demos/wiener_filter.py
+++ b/demos/paper_demos/wiener_filter.py
@@ -65,7 +65,7 @@ if __name__ == "__main__":
     variance = ift.sqrt(sm(proby.diagonal.weight(-1)))
 
     # Plotting
-    ift.plotting.plot(variance,name="uncertainty.pdf",xlabel='Pixel index', ylabel='Pixel index')
-    ift.plotting.plot(mock_signal,name="mock_signal.pdf",xlabel='Pixel index', ylabel='Pixel index')
-    ift.plotting.plot(ift.Field(signal_space, val=data.val),name="data.pdf",xlabel='Pixel index', ylabel='Pixel index')
-    ift.plotting.plot(m,name="map.pdf",xlabel='Pixel index', ylabel='Pixel index')
+    ift.plotting.plot(variance,name="uncertainty.png",xlabel='Pixel index', ylabel='Pixel index')
+    ift.plotting.plot(mock_signal,name="mock_signal.png",xlabel='Pixel index', ylabel='Pixel index')
+    ift.plotting.plot(ift.Field(signal_space, val=data.val),name="data.png",xlabel='Pixel index', ylabel='Pixel index')
+    ift.plotting.plot(m,name="map.png",xlabel='Pixel index', ylabel='Pixel index')
diff --git a/demos/wiener_filter_via_curvature.py b/demos/wiener_filter_via_curvature.py
index 7d4f41593e6a68b17ef9668b0a95ea6c75a11e44..fb2340e7f001a079d6188f4b12953dc8d6996e8f 100644
--- a/demos/wiener_filter_via_curvature.py
+++ b/demos/wiener_filter_via_curvature.py
@@ -80,8 +80,8 @@ if __name__ == "__main__":
     sspace2 = ift.RGSpace(shape, distances=L/N_pixels/nu.m)
 
     ift.plotting.plot(ift.Field(sspace2, mock_signal.real.val)/nu.K,
-                      name="mock_signal.pdf")
+                      name="mock_signal.png")
     data = ift.dobj.to_global_data(data.val.real).reshape(sspace2.shape)/nu.K
     data = ift.Field(sspace2, val=ift.dobj.from_global_data(data))/nu.K
-    ift.plotting.plot(ift.Field(sspace2, val=data), name="data.pdf")
-    ift.plotting.plot(ift.Field(sspace2, m_s.real.val)/nu.K, name="map.pdf")
+    ift.plotting.plot(ift.Field(sspace2, val=data), name="data.png")
+    ift.plotting.plot(ift.Field(sspace2, m_s.real.val)/nu.K, name="map.png")
diff --git a/demos/wiener_filter_via_hamiltonian.py b/demos/wiener_filter_via_hamiltonian.py
index 87a33dac01d6c0d9be7af841d008a37c600f0fc2..ee2a18c80219ee34a5cb5cc0b6642f73fd644203 100644
--- a/demos/wiener_filter_via_hamiltonian.py
+++ b/demos/wiener_filter_via_hamiltonian.py
@@ -89,8 +89,8 @@ if __name__ == "__main__":
     energy, convergence = minimizer(energy)
     m = energy.position
     D = energy.curvature
-    ift.plotting.plot(ss, name="signal.pdf", colormap="Planck-like")
-    ift.plotting.plot(fft.inverse_times(m), name="m.pdf",
+    ift.plotting.plot(ss, name="signal.png", colormap="Planck-like")
+    ift.plotting.plot(fft.inverse_times(m), name="m.png",
                       colormap="Planck-like")
 
     # sampling the uncertainty map
@@ -105,4 +105,4 @@ if __name__ == "__main__":
     sample_mean /= n_samples
     sample_variance /= n_samples
     variance = sample_variance - sample_mean**2
-    ift.plotting.plot(variance, name="variance.pdf", colormap="Planck-like")
+    ift.plotting.plot(variance, name="variance.png", colormap="Planck-like")