带全息图和 "bokeh" 的 3d 曲面图

3d surface plot with holoviews and "bokeh"

因为我将 holoviews 库与散景后端结合使用,所以我也想创建一个 3D 表面图。在文档中,我只找到了 matplotlib 和 plotly 后端。 有人可以分享代码片段如何使用 holoviews/bokeh 绘制 3D 表面图吗?

谢谢

Bokeh 是一个 2d 绘图库,不 built-in 支持 3d 绘图。可以将 third-party 3d JS 绘图工具包装为 Bokeh 自定义扩展,但 AFAIK Holoviews 尚未这样做。

使用 plotly 解决了这个问题。我在 spyder

中工作时必须使用 graph_objects 渲染 html 输出
import model as md
import numpy as np

import plotly.graph_objects as go
import plotly.io as pio
#pio.renderers.default = 'svg'
pio.renderers.default = 'browser'

TaRng  = np.arange(0,15,0.2)       # 75 values
TwSRng = np.arange(12,15,0.2)      # 15 values
mode   = 0.2
Tw     = [md.Tw(ta,tws,mode) for ta in TaRng for tws in TwSRng]  
Tw     = np.array(Tw).reshape(75,15)

fig = go.Figure(data=[go.Surface(z=Tw)])

fig.update_layout(title='free cooling', autosize=False,
              width=500, height=500,
              margin=dict(l=65, r=50, b=65, t=90))

fig.show()