我正在尝试使用 Plotly 创建箱线图,但在尝试使用已分组的 Pandas DataFrame 时出现错误。一些最初的挖掘产生了这段代码来将 Pandas 转换为 Plotly 接口:
def df_to_iplot(df):
'''
Coverting a Pandas Data Frame to Plotly interface
'''
x = df.index.values
lines={}
for key in df:
lines[key]={}
lines[key]["x"]=x
lines[key]["y"]=df[key].values
lines[key]["name"]=key
#Appending all lines
lines_plotly=[lines[key] for key in df]
return lines_plotly
这种将 DataFrame 转换为 Plotly 兼容系列的方法是否有替代方法?上面的代码是用于折线图的,但我想遍历我的维度来为我的 DataFrame 中的每个组生成一个箱线图。这是我收到的错误消息:
“TypeError:pandas.core.groupby.SeriesGroupBy 对象不是 JSON 可序列化的”
以下是 Plotly 网站上的一个示例:https ://plot.ly/python/box-plots
import plotly.plotly as py
from plotly.graph_objs import *
py.sign_in("xxxx", "xxxxxxxxxx")
import numpy as np
y0 = np.random.randn(50)
y1 = np.random.randn(50)+1
trace0 = Box(
y=y0
)
trace1 = Box(
y=y1
)
data = Data([trace0, trace1])
unique_url = py.plot(data, filename = 'basic-box-plot')