Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
[Tkinter] Cambiar color de fondo Matplotlib
#1
Hola buenas, estoy generando unos gráficos en una aplicación de escritorio realizada con Tkinter. El problema que tengo es que me genera unos gráficos muy simples, con el fondo blanco, y me esta costando mucho encontrar información en Internet sobre como puedo jugar con el color de fondo, la fuente del titulo, agregar alguna descripción si es posible. A ver si alguien puede ayudarme a cambiar el color de fondo aunque sea. Un saludo, y gracias.


Código:
import tkinter as tk
from tkinter import ttk
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg
import numpy as np
import matplotlib.pyplot as plt

class Application(ttk.Frame):
  def __init__(self, main_window):
      super().__init__(main_window)
   main_window.geometry("600x600")

   plt.figure('3')  # Crea una ventana titulada '3'
   self.fig, self.ax = plt.subplots()
   self.ax.plot(np.random.randn(150), np.random.randn(150), 'o')
   self.ax.set_title('Ejemplo grafico de puntos')

   self.canvas = FigureCanvasTkAgg(self.fig, master=main_window)
   self.canvas.draw()
   self.canvas.get_tk_widget().pack()


if __name__ == "__main__":
  main_window = tk.Tk()
  app = Application(main_window)
  app.mainloop()


He encontrado la siguiente instrucción self.ax.set_facecolor('tab:red') que lo que hace es cambiar el fondo del gráfico pero el borde se sigue viendo blanco, me da la impresión de que es el fondo del canvas de tipo "FigureCanvasTkAgg" y no se como cambiarlo.
Responder
#2
Hola Alfredo, entiendo que esas personalizaciones son propias de matplotlib y no de la librería Tk en sí.

Acá hay una discusión similar sobre el tema del fondo del canvas: https://stackoverflow.com/questions/2971...ter-canvas.

Saludos
¡No te pierdas nuestro curso oficial en Udemy para aprender Python, bases de datos SQL, orientación a objetos, tkinter y mucho más!

También ofrecemos consultoría profesional de desarrollo en Python para personas y empresas.
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)