我有一个大型数据集,我想在IPython笔记本中绘图.
我将~0.5GB .csv文件读入Pandas DataFrame
使用read_csv
,大约需要两分钟.然后我尝试绘制这些数据.
data = pd.read_csv('large.csv') output_notebook() p1 = figure() p1.circle(data.index, data['myDataset']) show(p1)
我的浏览器旋转,并没有向我显示任何情节.我尝试过以下方法:
output_file()
代替 output_notebook()
使用ColumnSource
对象作为source
参数的图形circle()
将我的数据下采样更易于管理.
Bokeh在其网站上声称提供"非常大或流式数据集的高性能交互".如何在没有计算机停止的情况下可视化这些大型数据集?
问题太广泛,无法提供任何具体的代码建议.我很好奇你尝试的下采样的大小是多少.默认的HTML Canvas for Bokeh绝对可以容纳数万个圈子.有几个选择:
对于简单的散点图和数十万个点的行,有一个可能有用的WebGL后端.
http://bokeh.pydata.org/en/latest/docs/user_guide/webgl.html
使用Bokeh服务器,创建一个Bokeh应用程序,在渲染之前对数据进行下采样.这里有一些应用示例:
https://github.com/bokeh/bokeh/tree/master/examples/app
该DataShader库可用于执行大型数据集下采样,并与背景虚化很好地集成在一起.DataShader 在这里进行演示/描述,从美国人口普查数据集3.5亿点开始,大约54:00开始.