美文网首页
神奇的holoviews

神奇的holoviews

作者: 巴拉巴拉_9515 | 来源:发表于2019-07-09 16:13 被阅读0次

长期以来,一直在寻找具有交互功能的python可视化工具。

使用过很多可视化工具,其中 plotlyipywidgetspyecharts 同时满足交互性,又具有一定美感,但:

  • plotly对网络依赖很大
  • pyecharts在断网环境下无法正常显示(空白)
  • ipywidgets可以和matplotlib组合生成交互图,可是书写没那么方便

然而 holoviews完全没有上面的问题,且操作简洁。

一、超快捷构建交互

支持根据数据的分类信息,自动生成可交互的选择框,如果不需要选择框,可以通过overlay()处理。

# 完整代码:http://holoviews.org/gallery/demos/bokeh/dropdown_economic.html#bokeh-gallery-dropdown-economic
macro = hv.Table(macro_df, key_dimensions, value_dimensions)
gdp_curves = macro.to.curve('Year', 'GDP Growth')

二、opts配置:瞬间变美

使用opts配置,快速提升图片颜值。

# 完整代码:http://holoviews.org/gallery/demos/bokeh/boxplot_chart.html#bokeh-gallery-boxplot-chart
# 快速生产线框图
boxwhisker = hv.BoxWhisker(df, ['cyl', 'origin'], 'mpg', label=title)
# opts美化:加个颜色,调整大小,瞬间不一样
boxwhisker.opts(show_legend=False, width=600, box_fill_color=dim('origin').str(), cmap='Set1')

三、加号和乘号

在holoviews中使用加号完成图片并排,使用*完成图片叠加;比其他工具要方便快捷很多。

例如以下python、pypy、jython为三个曲线图,使用*完成图片的叠加

# 完整代码:http://holoviews.org/gallery/demos/bokeh/area_chart.html#bokeh-gallery-area-chart
python = hv.Area(python, label='python', **dims)
pypy   = hv.Area(pypy,   label='pypy',   **dims)
jython = hv.Area(jython, label='jython', **dims)
overlay = (python * pypy * jython)
overlay

且该图片支持动态交互,可以点击legend选择显示内容。

四、tools=['hover']

opts配置时,使用tools=['hover']可以实现鼠标点到目标位置时显示标签。

# 完整代码:http://holoviews.org/gallery/demos/bokeh/choropleth_data_link.html#bokeh-gallery-choropleth-data-link
(choropleth + table).opts(
    opts.Table(height=428),
    opts.Polygons(width=500, height=500,  tools=['hover', 'tap'], xaxis=None, 
                  yaxis=None, color_index='Unemployment'))

小结

发现现阶段对于holoviews的使用并没有那么多,官网资料比较全面。

但holoviews其强大的交互能力、简洁的代码需求极大的满足了个人需求。

参考资料

holoviews gallery:http://holoviews.org/gallery/index.html
holoviews demos:https://github.com/pyviz/holoviews/tree/master/examples/gallery/demos/bokeh

相关文章

  • 神奇的holoviews

    长期以来,一直在寻找具有交互功能的python可视化工具。 使用过很多可视化工具,其中 plotly、ipywid...

  • 安装 HoloViews 后 jupyter notebook

    HoloViews[https://holoviews.org/index.html] 是一个优秀的 Python...

  • 神奇的不神奇

    当一个小小的光点 钻进卧房 从东边闪到西边 我知道 是太阳喊我 喊我出去看一眼 看一眼天 看一眼奇光异彩 当我出门...

  • 《神奇学校》的神奇之处

    《神奇学校》这本书收到了,书的质量很好,封面简洁明了,红色为图,白色为底,纸张手感很好,对于一向喜欢折书角作为记号...

  • 《神奇手账》的神奇

    对于手账,自己一直有一个美好的期望: 期望有一天,自己可以写出干净、整洁的手账。 与其说是写出,不如说是画出。因为...

  • 神奇的手神奇的画

    在云彩的南面, 那遥远的地方, 有一群树叶说: 我们想像花一样开放。 有一群花朵说: 我们想像鸟一样飞翔。 有一群...

  • 神奇的利物浦,神奇的足球

    自从尤文被阿贾克斯淘汰之后,便没怎么关注接下来的欧冠赛程,不过作为足球顶级赛事,多少也会留意一下比分。首回合巴萨主...

  • 神奇的文字神奇的土地

    那年的国庆,出游的计划因为意外摔伤而中止,想着八天长假只能做个宅女心里非常失落。无意间我看到了书架上那几本厚厚的《...

  • 神奇的梦,神奇的孩子

    妻子做了一个神奇的梦!就神奇的怀孕了! 一日,妻子抱着女儿去上幼儿园。朝阳明媚,女儿的两个小辫子,随着妻子的脚步左...

  • 20只唯有身体局部的神奇宝贝,你能猜出最后三只吗?

    神奇宝贝咕咕 神奇宝贝火球鼠 神奇宝贝菊草叶 神奇宝贝小锯鳄 神奇宝贝谢米 神奇宝贝雪妖女 神奇宝贝甲壳龙 神奇宝...

网友评论

      本文标题:神奇的holoviews

      本文链接:https://www.haomeiwen.com/subject/enmxkctx.html