Why axes is not visible when used with figure.add_axes ?

Hi,

I have the following snippet to reproduce my problem:

import numpy as np
import matplotlib.pyplot as plt

y = np.arange(4)
x = np.arange(4)

fig = plt.figure()
ax = fig.add_axes([0, 0, 1, 1])
ax.plot(x, y)
ax.set_title('test')
ax.set_xlabel("XX")
plt.show()

The picture is here:
http://imgur.com/a/1fh3u

Why are the X/Y axes, the title, and the label not visible?

Regards.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/matplotlib-users/attachments/20161217/826e88a1/attachment.html>

Le samedi 17 d?cembre 2016, Shiyao Ma a ?crit :

Hi,

I have the following snippet to reproduce my problem:

import numpy as np
import matplotlib.pyplot as plt

y = np.arange(4)
x = np.arange(4)

fig = plt.figure()
ax = fig.add_axes([0, 0, 1, 1])
ax.plot(x, y)
ax.set_title('test')
ax.set_xlabel("XX")
plt.show()

The picture is here:
http://imgur.com/a/1fh3u

Why are the X/Y axes, the title, and the label not visible?

The bounds you provided to the add_axes method specify that the
axes?spans all the figure. In fact [0,0,1,1] means that
- the lower left corner is at coordinate (0,0) of the figure canvas
- it spans the full width and height (1,1) of the canvas.
So that the ticklabels, labels and title are outside of the visible
part of the figure.

Reduce the bounds (or even use add_subplot(1,1,1)) to get a suitable
axes.