我是JupyterLab的新手,想学习。
当我尝试绘制图形时,它在jupyter笔记本上可以正常工作,但在jupyterlab上却不显示结果。有人可以帮我吗?
以下是以下代码:
import pandas as pd
import pandas_datareader.data as web
import time
# import matplotlib.pyplot as plt
import datetime as dt
import plotly.graph_objects as go
import numpy as np
from matplotlib import style
# from matplotlib.widgets import EllipseSelector
from alpha_vantage.timeseries import TimeSeries
以下是绘图的代码:
def candlestick(df):
fig = go.Figure(data = [go.Candlestick(x = df["Date"], open = df["Open"], high = df["High"], low = df["Low"], close = df["Close"])])
fig.show()
JupyterLab结果: Link to the image (JupyterLab)
JupyterNotebook结果: Link to the image (Jupyter Notebook)
我已经将JupyterLab和Notebook更新到了最新版本。我不知道是什么原因导致JupyterLab停止显示该图。
感谢您阅读我的文章。帮助将不胜感激。
注意*
我没有包括用于数据读取的部分(Stock OHLC值)。它包含API密钥。不便之处,敬请原谅。 另外,这是我关于堆栈溢出的第二篇文章。如果这篇文章写得不好,对不起。如果可能的话,我会尽力而为。再次感谢您的帮助。
答案 0 :(得分:1)
TL; DR:
运行以下命令,然后重新启动Jupyter实验室
jupyter labextension install @jupyterlab/plotly-extension
通过以下方式开始实验:
jupyter lab
使用以下代码进行测试:
import plotly.graph_objects as go
from alpha_vantage.timeseries import TimeSeries
def candlestick(df):
fig = go.Figure(data = [go.Candlestick(x = df.index, open = df["1. open"], high = df["2. high"], low = df["3. low"], close = df["4. close"])])
fig.show()
# preferable to save your key as an environment variable....
key = # key here
ts = TimeSeries(key = key, output_format = "pandas")
data_av_hist, meta_data_av_hist = ts.get_daily('AAPL')
candlestick(data_av_hist)
更长的解释:
由于此问题与plotly有关,而不与matplotlib有关,因此您不必使用以下内容的“内联魔法”:
%matplotlib inline
每个扩展都必须安装到jupyter实验室,您可以通过以下方式查看列表:
jupyter labextension list
有关其他扩展程序的详细说明,请参见相关问题: jupyterlab interactive plot