Pois então deviado as novas versoes do seaborn, e pelo fato de que so é possivel fazer o habiente virtual com as novas versoes das bibliotecas citadas, então após tentar varias variações( e usar o gpt) cheguei nesse código funcional
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.ticker as mticker
# Configurações iniciais de fonte
plt.rcParams['font.family'] = 'sans-serif'
plt.rcParams["font.sans-serif"] = 'Verdana'
def candlestick(date, open, high, low, close):
fig, ax = plt.subplots(figsize=(30,11), dpi=72, facecolor='#edf3ee')
ax.set_facecolor("#edf3ee")
# Calculando as cores (verde para alta, vermelho para baixa)
cores = ["green" if c > o else "red" for c, o in zip(close, open)]
# Desenhando o corpo dos candles
for i in range(len(date)):
# Pavio
ax.plot([date[i], date[i]], [low[i], high[i]], color=cores[i], alpha=0.7) # Pavio com transparência
# Corpo do candle
ax.bar(date[i], close[i] - open[i], bottom=open[i], color=cores[i], width=0.8, alpha=0.7) # Barras com transparência
# Melhorando a formatação do gráfico
ax.xaxis.set_major_locator(mticker.MaxNLocator(10)) # Limitar o número de labels no eixo X
ax.tick_params(axis='x', rotation=45) # Rotacionar os labels do eixo X para evitar sobreposição
ax.set_xlabel("Date")
ax.set_ylabel("Price")
dataset["Date"] = pd.to_datetime(dataset["Date"], format="%Y-%m-%dT%H:%M:%S.%f")
candlestick(dataset["Date"], dataset["Open"], dataset["High"], dataset["Low"], dataset["Close"])
plt.subplots_adjust(left=0.07, bottom=0.05, right=0.95, top=0.95)
plt.show()