python - 坐标系未在 holoviews 的 DynamicMap 中更新
问题描述
我尝试在全息视图中实现交互式直方图,您可以在其中更改上限(因此我可以决定是否要查看异常值)。我使用散景作为后端。
但不幸的是,调整滑块只会重新计算直方图,但不会调整 x 和 y 坐标,因此您必须手动放大/缩小才能看到更改。这是正常行为吗?
我给你一个最小的例子:
import numpy as np
import holoviews as hv
from holoviews import opts
hv.extension('bokeh')
a=np.array([1,1,11,1,1,1,1,1,1,1,2,2,2,2,2,5,5,5,30])
def hist_creater(upper_limit):
frequencies, edges=np.histogram(a,range=(0,upper_limit),bins=10)
return hv.Histogram((edges, frequencies))
dmap=hv.DynamicMap(hist_creater,kdims=["upper_bound_for_weight"]).redim.range(upper_bound_for_weight=(10,100))
dmap.opts(width=300)
解决方案
请注意,如果您选择滚动缩放工具,您已经可以在散景中缩放轴以查看您喜欢的任何区域。因此,您不一定需要为此目的使用单独的小部件,但也许我误解了这里的目标。
在任何情况下,如果您希望为此 DynamicMap 中的每个新帧重新计算轴边界,只需指定dmap.opts(width=300, framewise=True)
. 默认情况下,它会尝试保持您的初始范围相同,以便您可以看到数据的变化,但framewise=True
它会告诉它每次数据更改时自动调整范围。
推荐阅读
- php - 将表单数据转换为 PDF 并将该 PDF 存储在服务器上
- github - 来自 RStudio 的 Git 提交错误:“系统找不到指定的路径”
- python - 检查子字符串是否存在于字符串中的特定位置
- javascript - 无法从客户端代码调用位于库中的服务器端函数
- java - Firebase 消息传递仅适用于单独的设备
- c++ - 编译时 Visual Studio 找不到 vcvars64.bat,即使它存在
- amazon-cognito - 如何建立从用户池到 aws appsync 模型的数据关系
- android - 我想在 Multipart 类中获取 SharedPreference 数据
- react-native - React Native 地图仅使用 apk 崩溃
- jquery - 占位符覆盖其他值 - 意外行为