RAPIDS 可视化指南
RAPIDS 库可以轻松融入可视化工作流程。这个精选库目录提供了直接的 cuDF 支持或易于集成。
通过 RAPIDS + Plotly Dash 2020 年人口普查演示,在 1.5 秒内渲染超过 3.3 亿个数据点
精选库
- HoloViews:用于从高级规范快速构建复杂交互式图表的声明性对象。直接使用 cuDF。
- hvPlot:快速从 cuDF、Pandas、Xarray 或其他数据结构返回交互式图表。只需将
.plot()
替换为.hvplot()
。 - Datashader:快速将大型数据集栅格化为散点图、折线图、地理空间图或图表。直接使用 cuDF。
- Plotly:图表库,支持 Plotly Dash 用于构建复杂的分析应用程序。
- Bokeh:用于构建复杂交互式可视化的图表库。
- Seaborn:基于 matplotlib 的静态单图表库。
其他值得关注的库
- Panel:适用于 Python 生态系统的高级应用程序和仪表板解决方案。
- PyDeck: deck.gl 的 Python 绑定,用于基于 webGL 的交互式空间可视化,针对 Jupyter 环境进行了优化。
- cuxfilter: RAPIDS 开发的交叉过滤仪表板工具,集成了上述许多库。
- node RAPIDS: nodeJS 中的 RAPIDS 绑定,是使用 Python 的高性能 JS/TypeScript 可视化替代方案。
GPU 加速交互
以下库直接使用 RAPIDS cuDF/Dask-cuDF 和/或 cuSpatial 来创建支持加速交叉过滤或渲染的图表
注意: Web 托管与本地托管图表交互
通过网站与此页面交互时,下面的交互式示例均为静态且使用预计算数据。要运行真正的交互式版本,请通过我们 cuxfilter GitHub Notebooks 上找到的活动实例进行托管。
精选库
- HoloViews 是一个开源 Python 库,旨在使数据分析和可视化变得无缝且简单。请参阅此图以获取出色的架构概述。
- 使用 HoloViews,您通常可以用很少的代码行表达您想做的事情,让您专注于您想要探索和传达的内容,而不是绘图过程本身。
- 在 holoviews.org 阅读关于 Holoviews 的信息,并在 holoviews.org/gallery/ 探索其画廊。
- 阅读关于 RAPIDS 兼容性的信息。
在下方运行一个交互式示例和 cpu / gpu 代码比较
- hvPlot 为 Pandas 和其他库提供的静态绘图 API 提供了一种替代方案,即交互式绘图 API。只需将
.plot()
替换为.hvplot()
。 - 如果提供了针对原生绘图 API 的扩展机制,hvPlot 可以与各个库紧密集成,或者也可以作为独立组件使用。
- 在 holoviews.org 阅读关于 hvPlot 的信息,并在 hvplot.holoviz.org/reference/index.html 探索其画廊。
- 阅读关于 RAPIDS 兼容性的信息。
在下方运行一个交互式示例和 cpu / gpu 代码比较
- Datashader 是一个图形管道系统,用于快速灵活地创建大型数据集的有意义的表示。
- Datashader 能够静态渲染各种图表类型,并与 HoloViews 或 cuxfilter 等其他库结合时实现交互式渲染。
- 在 datashader.org 阅读关于 Datashader 的信息并探索其示例。
- 阅读关于 RAPIDS 兼容性的信息。
在下方运行一个交互式示例和 cpu / gpu 代码比较
- Plotly 提供基于浏览器的绘图、分析和统计工具来创建功能强大的应用程序。
- 在 plotly.com/python/ 阅读关于 Plotly Python 绘图库的信息,并在 dash.gallery/Portal/ 探索 Plotly Dash 画廊。
- 阅读关于 RAPIDS 兼容性的信息。
在下方运行一个交互式示例和 cpu / gpu 代码比较
- Bokeh 可以轻松创建常见的交互式图表,也可以使用工具和小部件处理自定义或特殊用例。
- 图表、仪表板和应用程序可以发布到网页或 Jupyter notebook 中。
- 在 bokeh.org/ 阅读关于 Bokeh 的信息,并探索其演示页面 demo.bokeh.org/。
- 更多 文档。
在下方运行一个交互式示例和 cpu / gpu 代码比较
- Seaborn 是一个基于 matplotlib 的 Python 数据可视化库。它提供了用于绘制静态图表的高级接口。
- 虽然没有直接通过 GPU 加速,但它提供了一个使用流行的基于 Python 的可视化库与 RAPIDS 结合的基础示例。
- 在 seaborn.pydata.org/ 阅读关于 Seaborn 的信息,并在 seaborn.pydata.org/examples/index.html 探索其画廊。
- 更多 文档。
在下方运行一个交互式示例和 cpu / gpu 代码比较
其他值得关注的库
- Panel 是一个 Python 库,允许您通过将用户定义的小部件连接到图表、图像、表格或文本来创建自定义交互式 Web 应用程序和仪表板。
- Panel(与 HoloViews、hvPlot 和 Datashader 类似)是 HoloViz 生态系统的一部分。
- Panel 在 Python 可视化生态系统中运行良好,并且是为本页交互式工具提供支持的库。
- 在 panel.holoviz.org/ 阅读更多关于 Panel 的信息,并在 panel.holoviz.org/reference/ 探索其画廊。
- 更多 文档。
- pyDeck 库是一组用于使用 deck.gl 进行空间可视化的 Python 绑定,针对 Jupyter 环境进行了优化。
- 在 deck.gl 了解更多关于其核心 deck.gl 基于 webGL 的库的信息。
- 在 pydeck.gl/ 阅读关于 pyDeck 的信息,并在 pydeck 画廊探索其画廊。
- 更多 文档。
- cuxfilter 是 RAPIDS 开发的交叉过滤库,只需几行 Python 代码,即可使用同类最佳的图表库实现 GPU 加速的仪表板。
- 在 github.com/rapidsai/cuxfilter 阅读关于 cuxfilter 的信息,并在 docs.rapids.ai/api/cuxfilter/stable/examples/examples.html 探索其示例。
- 更多 文档。
- node RAPIDS 为 nodeJS 和 JS/TypeScript 用户生态系统带来 GPU 加速。
- 将大型数据集和复杂的计算过程保留在 GPU 内存中,同时仅使用浏览器前端进行高性能交互。
- node RAPIDS 可在 NPM 上获取。
- 在 github.com/rapidsai/node 阅读关于 node RAPIDS 的信息,并在 github.com/rapidsai/node/tree/main/modules/demo 探索其演示画廊。
- 更多 文档。