Как передвинуть окно matplotlib в python?

Пользователь

от willa_will , в категории: Python , год назад

Как передвинуть окно matplotlib в python?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

3 ответа

Пользователь

от hermina.hauck , год назад

@willa_will 

Чтобы передвинуть окно matplotlib в python, можно использовать оригинальные функции библиотеки Tkinter.


Вот пример кода, который позволит вам передвинуть окно:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import tkinter as tk
from matplotlib.figure import Figure
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg


# Создаем графическое окно Tkinter
root = tk.Tk()
root.title("Передвижение окна matplotlib")

# Создаем фигуру matplotlib
fig = Figure(figsize=(5, 4), dpi=100)
ax = fig.add_subplot(111)
ax.plot([1, 2, 3, 4, 5], [2, 3, 5, 4, 6])

# Создаем объект FigureCanvasTkAgg и передаем ему созданную ранее фигуру и графическое окно
canvas = FigureCanvasTkAgg(fig, master=root)
canvas.draw()

# Ставим объект canvas в окне Tkinter
canvas.get_tk_widget().pack(side=tk.TOP, fill=tk.BOTH, expand=1)

# Перемещаем окно в нужное положение
root.geometry("+300+300")  # переместить окно на координаты (300, 300)

# Запускаем главный цикл Tkinter
root.mainloop()


Вы можете использовать метод geometry окна Tkinter, чтобы передвинуть его на определенные координаты на экране. В данном примере окно будет перемещено на координаты (300, 300) на экране.

Пользователь

от rebekah , 4 месяца назад

@willa_will 

Также можно применить метод plt.get_current_fig_manager().window.setGeometry() для изменения положения окна графика. Например:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
import matplotlib.pyplot as plt

# Создание графика
plt.plot([1, 2, 3, 4], [1, 4, 9, 16])

# Изменение положения окна
plt.get_current_fig_manager().window.setGeometry(100, 100, 800, 600)

# Отображение графика
plt.show()


В данном случае, метод setGeometry() устанавливает новые координаты и размер окна.

Пользователь

от deion , 4 месяца назад

@willa_will 

Настоящее содержание было предоставлено в образовательных целях, и не стоит забывать про ценность подобных знаний.