问题标签 [datashader]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
412 浏览

python - Datashader 不会随着散景图的放大而更新

我尝试用 holoviews、bokey 和 datashader 绘制一个大型数据序列。该图显示没有任何问题,但放大后,该图不会改变分辨率,因此数据序列非常像素化。我以前在另一台电脑上做过,它在那里工作没有问题。同样在 HV 网站上,这些示例通过放大并没有得到更好的分辨率,尽管它可以在另一台 PC 上运行。已经导入了这个:

在文档中描述,必须运行 jupyther 或 bokeh 服务器。我不是用 hv.extension 做的吗?

0 投票
0 回答
221 浏览

plot - 我们如何一起使用 Dask 和 Datashader?

我想在数据着色器的帮助下绘制时间序列数据。
我拥有 NetCDF 文件形式的所有数据。
由于文件很大 - 大约 2 gb 长,我不希望所有的东西同时加载到内存中,所以我使用 Dask 来使用数据块。
我尝试在网上查找同时使用 datashader 和 Dask 的资源,但我找不到任何东西。
我正在做的事情可能吗?另外,如果可能的话,你能指点我一些资源吗?

0 投票
0 回答
192 浏览

python - geoview 没有显示任何输出

我正在尝试在地图上可视化一个非常大的数据点,因为我正在使用数据阴影,我正在尝试处理芝加哥犯罪数据集:https ://www.kaggle.com/currie32/crimes-in-chicago 。我正在遵循本教程中给出的指导方针-(https://towardsdatascience.com/large-scale-visualizations-and-mapping-with-datashader-d465f5c47fb5)看看我的数据集:( 在此处输入图像描述 东向和北向是投影值经纬度)

下面的代码应该给我所有点的地图可视化,但我没有得到任何输出,甚至没有一行纯文本

0 投票
0 回答
165 浏览

python - TypeError:无法根据规则“安全”使用 hvPlot 和 datashade 将数组数据从 dtype('int64') 转换为 dtype('int32')

我尝试使用本教程https://holoviz.org/tutorial/Basic_Plotting.html在 hvPlot 中使用数据阴影,但使用个人数据。

我可以用df.hvplot.scatter(x='col1', y='col2', datashade=False)n 行显示我的情节,但是当我尝试使用 datashade with 时df.hvplot.scatter(x='col1', y='col2', datashade=True),我有这个错误:

我的所有数据都在我的数据框中的 float64 中,并且我在 5 行数据而不是 38k+ 时得到相同的错误。我的 5 行如下所示:

我错过了什么?我尝试过像示例这样的索引,以及日期时间中的索引。

0 投票
1 回答
81 浏览

python - 在 Datashader 中分段绘图 - 数据超出了我的内存

所以我正在试用 Datashader,它的外观和性能都很棒。但是,所有示例都必须使用具有大量内存的机器来完成,或者只是没有那么大的数据集。因为当我尝试做一些大情节时,我炸毁了我的 16GB 内存。我毫不怀疑 Datashader 可以处理数据,但是,我不知道如何加载它并分段绘制它。

所以要清楚,它不是在绘图期间,而是实际上通过从数据库读取失败 - 但是,由于 Datashader 是一个用于绘制真正大数据的库,所以必须有一些方法而不是在 df 中加载所有内容并传递它?

我现在的代码:

例如,是否可以多次调用 cvs.points 方法(从而将我的数据分成几位?)

0 投票
1 回答
379 浏览

dask - 使用与 datashader 一起分发的 dask 的问题:“不能腌制弱引用对象”

我正在使用 datashader 和 dask,但是在尝试使用正在运行的集群进行绘图时遇到问题。为了使其更具体,我有以下示例(嵌入在散景图中):

这提出了一个:

我有这样的理论,因为您无法在集群中分发数据阴影操作。抱歉,如果这是一个菜鸟问题,我将非常感谢您能给我的任何建议。

0 投票
1 回答
558 浏览

python - 内存和 Dask 分布式问题:加载到内存的数据大小是数据大小的数倍,并且不会发生数据溢出

我正在使用 Dask 分布式和 Datashader 运行一些简单的测试,但我遇到了两个我无法解决的问题,也无法理解它为什么会发生。

我正在处理的数据包含 17 亿行,每行 97 列,分布在 64 个 parquet 文件中。我的测试代码如下,其中我只是在散点图中绘制了两列数据,遵循https://datashader.org/user_guide/Performance.html底部的示例代码:

这两个问题如下:

首先,我的员工将太多数据带入内存。例如,我只用一个工作人员和一个文件运行了前面的代码。尽管一个文件是 11gb,但 Dask 仪表板显示大约 50gb 加载到内存中。我发现的唯一解决方案是更改以下行,显式显示一小部分列:

虽然这很有效(并且很有意义,因为我只使用 2 列来绘制图),但对于为什么工作人员使用这么多内存仍然令人困惑。

第二个问题是,即使我在 ~/.config/dask/distributed.yaml 文件中配置了 70% 的溢出应该发生,但我的工作人员会因为内存不足而不断崩溃:

Distributed.nanny - 警告 - Worker 超出了 95% 的内存预算。重启distributed.nanny - 警告 - 重启工人

最后,当我绘制所有点时,columns=['x','y','a','b','c'] 在读取数据时只带了 5 列,我得到了不合理的缓慢时间。尽管文件被分成 8 个磁盘以加速 I/O 并使用 8 个内核(8 个工作人员),但绘制 17 亿个点需要 5 分钟。

我正在使用:dask 2.18.0、distributed 2.19.0、datashader 0.10.0 和 python 3.7.7。

我已经为此苦苦挣扎了整整一周,所以任何建议都将受到高度赞赏。请随时向我询问可能缺少的任何其他信息。

0 投票
1 回答
482 浏览

django - Django 上的散景 + Holoviews + Datashader

我们正在尝试构建一个 Web 应用程序——仪表板——在 DJango 上使用 Bokeh + Holoviews + Datashader 显示不同的交互(包括点击回调、获取新数据等)图表。

由于数据非常大并且可能有 10+ 百万个点,我们正在使用数据着色器。我们可以从 Bokeh + Holoviews + Datashader 从后端获得一个来自后端的静态 html,并使用 Django REST api 将其传递给前端:

视图.py

工作正常。但是,由于我们使用了 Datashader,因此当我们放大时,数据会在静态 html 中聚合和转换,我们不会从端侧获得我们正在寻找的数据。为此,我的猜测是我们需要 Bokeh 服务器。

我的疑问是:(因为大型数据集必须使用 Datashader)

  1. 我如何将 Bokeh 服务器与 Django REST api 一起使用?另外我想在前端有一个自定义的 html 页面,所以我使用 Django 模板。
  2. 使用 Bokeh + Datashader 是否可以替代 Django 进行 REST apis 开发?
  3. Bokeh 是否支持 REST API?如何 ?请分享一些 REST API 和回调的例子?例如,我有一个仪表板,当我单击一个图表时,我应该获取有关该图表的更多详细信息并在仪表板中播放这些图表?下拉等
0 投票
1 回答
472 浏览

python - 如何处理 PyViz/datashader 网络示例中的节点点击?

我查看了datashader/NetworksPyViz/network_packets(也使用了 datashader)。我想在节点选择上获得对python代码的回调(在节点id上调用一个函数,即fun(node_id))。如何在 PyViz/datashader 中做到这一点?

0 投票
1 回答
287 浏览

python - 将 matplotlib 转换为交互式全息视图 + 数据着色器可视化(最好使用交互式画笔)

如何将以下绘图移植到 hvplot + datashader? 在此处输入图像描述

理想情况下,可以保留交互性,并且可以交互地选择特定的 device_id。(理想情况下使用画笔,即在选择异常点时,我希望能够过滤到基础系列,但如果这不起作用,也许从列表中选择它们也可以。请记住,这个列表可能相当长(在 1000 个元素的区域内))。

到目前为止,我只能实现:

在此处输入图像描述

理想情况下,我也可以突出显示类似于 matplotlib: 的某些范围axvspan