You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I use the code below which shows candles and volume. Red and green candles are not displayed correctly. I changed colors and some other things. No luck at all.
Runing code:
import yfinance
import finplot as fplt
from PyQt6.QtWidgets import QApplication, QVBoxLayout, QWidget, QDialog, QLabel, QPushButton
from PyQt6.QtCore import Qt
import sys
class CustomWidget(QWidget):
def __init__(self, df):
super().__init__()
# Create a layout
layout = QVBoxLayout(self)
# Create two plots. Second plot is an "overlay" of the first plot
self.ax = fplt.create_plot('AAPL', init_zoom_periods=100)
self.ax2 = self.ax.overlay()
# Create candlestick plot on first plot
self.candle_plot = fplt.candlestick_ochl(df[['Open', 'High', 'Low', 'Close']], ax=self.ax)
# doesnt solve the problem with candle color and zoom
#self.candle_plot.colors.update (dict (bull_body='#0a0', bull_shadow='#100', bull_frame='#200',
# bear_body='#a00', bear_shadow='#300', bear_frame='#400'))
# Create volume plot on second plot
self.volume_plot = fplt.volume_ocv(df[['Open', 'Close', 'Volume']], ax=self.ax2)
# Add plots to the layout
layout.addWidget(self.ax.vb.win)
layout.addWidget(self.ax2.vb.win)
def update_data(self, df):
# Update the data for the plots
self.candle_plot.update_data(df[['Open', 'High', 'Low', 'Close']])
self.volume_plot.update_data(df[['Open', 'Close', 'Volume']])
class MyDialog(QDialog):
def __init__(self):
super().__init__()
df = yfinance.download ('AAPL')
# Create an instance of the widget
self.ftplt = CustomWidget(df)
# Create a vertical layout
layout = QVBoxLayout()
layout.addWidget(QLabel("Here comes the widget"))
# Add the widget to the layout
layout.addWidget(self.ftplt)
layout.addWidget(QLabel("End of the widget"))
button = QPushButton ("new Data")
button.clicked.connect (self.loaddata)
layout.addWidget (button)
self.setLayout(layout)
def loaddata(self):
df = yfinance.download ('ADBE')
# Update the plots with the new data
self.ftplt.update_data(df)
self.ftplt.update()
def main():
app = QApplication(sys.argv)
widget = MyDialog()
widget.show()
sys.exit(app.exec())
if __name__ == "__main__":
main()
I use the code below which shows candles and volume. Red and green candles are not displayed correctly. I changed colors and some other things. No luck at all.
Runing code:
Full data:
Zoomed data:
Same issue if I run the widget allone:
How can I solve this behavior?
thxia
The text was updated successfully, but these errors were encountered: