es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo guardar un gráfico de velas en formato PNG con diferentes indicadores adicionales.

Mi código es el siguiente:

fig = make_subplots(rows = 1, cols = 1, shared_xaxes = True, subplot_titles = 
(currency_name+' '+timeframe), vertical_spacing = 0.1, row_width = [0.6])

# ----------------
# Gráfico de velas
fig.add_trace(go.Candlestick(x = chart.index, open = chart['open'], high = 
chart['high'], low = chart['low'], close = chart['close'], showlegend=False, name = 
'candlestick'), row = 1, col = 1)

# Media móvil
fig.add_trace(go.Scatter(x = chart.index, y = chart['middle_band'], line_color = 
'green', name = 'middle_band', opacity = 0.5), row = 1, col = 1)

# Límite superior
fig.add_trace(go.Scatter(x = chart.index, y = chart['upper_band'], line_color = 
'green', name = 'upper_band', opacity = 0.7), row = 1, col = 1)

# Límite inferior
fig.add_trace(go.Line(x = chart.index, y = chart['lower_band'], line_color = 'green', 
name = 'lower_band', opacity = 0.7), row = 1, col = 1)

fig.update_layout(
title='Bandas de Bollinger',
yaxis_title=currency[5]+' '+timeframe,
shapes = [dict(
    x0=chart.index[0].to_pydatetime(), x1=chart.index[0].to_pydatetime(), y0=0.1, 
y1=0.2, xref='x', yref='paper',
    line_width=1)],
annotations=[dict(
    x=chart.index[0].to_pydatetime(), y=0.01, xref='x', yref='paper',
    showarrow=False, xanchor='right', text=str(candle_pattern)+ ' aquí')])

# Eliminar deslizador de rango (marco de tiempo corto)
fig.update(layout_xaxis_rangeslider_visible=False)

fig.show()

Y obtuve una bonita imagen con velas e indicadores, pero no puedo encontrar la manera de guardarla en formato png.

fig.savefig() no funciona con make_subplots.
¿Cómo puedo guardar exactamente esa imagen que obtuve después de fig.show() en formato png?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Para guardar la imagen como un archivo png, puedes utilizar la función write_image() del módulo plotly.io.

    Primero, importa el módulo:

    import plotly.io as pio
    

    Luego, después de llamar a fig.show(), agrega la siguiente línea para guardar la imagen en un archivo:

    pio.write_image(fig, 'mi_grafico.png')
    

    Esto guardará la figura actual (fig) en un archivo llamado mi_grafico.png en el directorio actual. Puedes especificar un nombre de archivo o una ruta diferente según sea necesario.

Comments are closed.