我已经把一个连续变量x转换成了interval,还有一个带数值的y变量,数据框是:
data = {'x':[(-0.001, 7.0], (7.0, 19.0], (19.0, 97.0], (97.0, 817.0]],
'y':[769.0, 810.0,757.0,652.0]}
# Create DataFrame
df = pd.DataFrame(data)
df
这两个变量的数据类型均为float64
。此外,变量“x”的说明如下:
Name: x, dtype: category
Categories (4, interval[float64]): [(-0.001, 7.0] < (7.0, 19.0] < (19.0, 97.0] < (97.0, 817.0]]
现在,我用plotly来描绘这两个变量之间的关系:
# figure
plot_data = [
go.Scatter(
x = df['x'],
y = df['y'])]
plot_layout = go.Layout(title=' Relationship between x and y')
fig = go.Figure(data=plot_data, layout=plot_layout)
pyoff.iplot(fig)
但显示的错误是:
TypeError: Object of type Interval is not JSON serializable
因此,据我所知,变量'x'是以plotly无法识别的格式给出的区间。如何解决这个问题?你知道有什么例子可以用plotly来绘制区间变量吗?
1条答案
按热度按时间nnsrf1az1#
您只需要使用“.astype('str ')”强制转换列