[英]hvplot taking hours to render image
我正在處理來自數據發布 3 的 Gaia 天體測量數據,並且由於非常快的渲染時間和交互性,將 hvplot/datashader 視為可視化大數據的首選。 在我看到的每個示例中,在慢速端從數億個數據點渲染圖像需要幾秒鍾。 但是,當我嘗試為我的數據使用相同的代碼時,渲染任何圖像都需要數小時。
對於上下文,我在一個非常大的研究計算機集群上運行此代碼,該集群具有數百 GB 的 RAM、一百個左右的內核和 TB 的存儲空間供我使用,計算能力在這里應該不是問題。 此外,我已經將我需要的數據轉換為一系列鑲木地板文件,這些文件正在被讀入帶有 glob 的 dask dataframe。 我的代碼如下:
...
import dask.dataframe as dd
import hvplot.dask
import glob
df=dd.read_parquet(glob.glob(r'myfiles/*'),engine='fastparquet')
df=df.astype('float32')
df=df[['col1','col2']]
df.hvplot.scatter(x='col1',y='col2',rasterize=True,cmap=cc.fire)
...
有沒有人知道這里可能是什么問題? 任何幫助,將不勝感激
編輯:通過將數據轉換為數量較少的 memory 文件(3386 -> 175),我現在的渲染時間低於一個小時
無法訪問數據很難進行調試,但您可以實施的一種快速優化是避免加載所有數據和 select 感興趣的特定列:
df=dd.read_parquet(glob.glob(r'myfiles/*'), engine='fastparquet', columns=['col1','col2'])
除非至關重要,否則我也會避免.astype
。 它不應該成為瓶頸,但如果 memory 不是約束,則此float32
的收益可能無關緊要。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.