简体   繁体   中英

Matplotlib plot window appears on different desktop

I am running Python 2.7.2 on Mac 10.8 with matplotlib 1.1.1. The backend I am using is MacOSX. If I run any plotting code eg

import matplotlib.pyplot as plt
plt.plot([1,2,3], [4,5,6])
plt.show()

the plot window always appears on a different desktop from the one I am working on. This behaviour is the same if I use ipython or if I run a script. Is there a way around this? It's annoying to have to go and hunt for the plot each time!

If you previously moved it with OSX's desktop management commands you can fix it like this:

Right click (Command click) on the Python Icon of the Matplotlib Icon in the Dock. Under Options there are options to assign the "application" to Desktops. Set to none. If it still opens in another desktop, move it to desktop you want it on (one way is to click and hold the header of the window... press Ctrl-#, where # is the desktop you want it on)

Source

import matplotlib
matplotlib.use("wx")
from pylab import *
figure(1)
plot([1,2,3,4,5])
thismanager = get_current_fig_manager()
thismanager.window.SetPosition((500, 0))
show()

For TkAgg , just change it to:

thismanager.window.wm_geometry("+500+0")

I found this to be pretty helpful actually: matplotlib window layout questions

Although, it seems that Brian has beat me to it. Have you checked out WXAgg?

>>> import matplotlib
>>> matplotlib.get_backend()
'WXAgg'

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM