Línea en matplotlib

Forums

Buenos días a todos, me encuentro con un problema un tanto sorprendente. No soy un experto en matplotlib aunque llevo tiempo usando esta librería y, por algún motivo, creía que sabía hacer lo que no sé (risas). Querría dibujar una línea dados los coeficientes que la determinan. Más concretamente estoy obteniendo estos coeficientes aplicando el método de mínimos cuadrados (usando numpy):

a, b = np.polyfit(tips.total_bill, tips.tip, deg = 1)

Y querría dibujar esta línea con matplotlib. Pensaba que con un simple plt.plot() serviría. Y no sirve, pues la línea comienza y termina exactamente en las coordenadas que le doy (y yo querría que la línea se expandiera por toda la gráfica). También he usado Line2D y tampoco sirve por la misma razón... ¿alguna idea?

Gracias!

Raúl

Hola Raúl,

lo que tú buscas está disponible solo en la versión 3.3 de Matplotlib:

https://matplotlib.org/api/_as_gen/matplotlib.axes.Axes.axline.html

Yo, por ejemplo, tengo la versión 3.2.2 que incluye Anaconda y no tengo acceso a dicha función. La única opción disponible es usar la función plot o line2D dando como extremos de la línea los valores adecuados para que ocupen lo que deseas. No es la mejor opción pero funciona...

Un saludo

Ismael

Hola Ismael, muchas gracias. He intentado actualizar matplotlib y conda me dice que hay nosecuantas incompatibilidades, así que creo que voy a seguir usando plot o line2D. La verdad es que las últimas versiones de matplotlib me han provocado más de un dolor de cabeza. En fin.

Gracias de nuevo

Enviado por Raúl el Mié, 25/11/2020 - 11:18