我正在使用Holoviews创建一个可视化的仪表板,我想在其中创建一个动态树状图。我尝试查找文档,但在官方的全息视图中没有找到任何有关TreeMaps的文档。然后我使用Squarify库绘制TreeMaps,但我面临的唯一问题是,我无法在服务器上部署这些树地图。当我启动服务器时,弹出这个错误消息。
File "C:\Users\Nisarg.Bhatt\WinPython\python-3.6.5.amd64\lib\site-
packages\holoviews\plotting\util.py", line 236, in initialize_dynamic
dmaps = obj.traverse(lambda x: x, specs=[DynamicMap])
AttributeError: 'AxesSubplot' object has no attribute 'traverse'
TreeMap代码:
cmap = matplotlib.cm.Blues
mini=min(data["Quarter"])
maxi=max(data["Quarter"])
norm = matplotlib.colors.Normalize(vmin=mini, vmax=maxi)
#colors = [cmap(norm(value)) for value in data]
data1=data[0:1]
labels = [(label) for label in zip(data.Quarter,data.Company)]
fig = plt.figure(figsize=(20, 10))
plots=squarify.plot(sizes=data["month"],label= labels, color=
["red","blue","green"],alpha=.8)
new_plot= renderer.app(plots)
执行此操作时,将在Jupyter NoteBook中创建TreeMaps。
QUERY: 1.是否有像hv.Curve或hv.Bars这样的仅使用全视图绘制TreeMap的其他方法
提前谢谢。尊敬的Nisarg
发布于 2019-07-12 03:11:00
使用较低级别的库作为bokeh (全息视图兼容),您可以像squarify一样绘制矩形。
发布于 2019-11-19 23:20:35
#plotting TreeMap using squarify.plot
data = [8,3,4,2]
df = pd.DataFrame(data, columns=['nb_people'])
label=df.groupby(pd.cut(df["nb_people"], np.array([0,2,5,np.inf]),include_lowest=True,labels=['Group A','Group B','Group C'])).groups
squarify.plot(sizes=df['nb_people'], label=label, alpha=1)
plt.show()
方格化
https://stackoverflow.com/questions/50869282
复制相似问题