如何手动设置全息图颜色栏的限制?

And*_*rew 3 python colorbar holoviews

当我尝试输入自己的代码时...

在较早的单元格中...

ticker = FixedTicker(ticks=range(0, 10))
Run Code Online (Sandbox Code Playgroud)

在以下单元格中...

%%opts HeatMap [colorbar=True colorbar_opts={'ticker': ticker}]
Run Code Online (Sandbox Code Playgroud)

我知道了

TypeError [Call holoviews.ipython.show_traceback() for details]
MetaModel object got multiple values for keyword argument 'ticker'
Run Code Online (Sandbox Code Playgroud)

这是回溯...

  File "/Users/ahuang11/anaconda3/envs/tf/lib/python3.6/site-packages/holoviews/plotting/bokeh/element.py", line 757, in _init_glyphs
    renderer, glyph = self._init_glyph(plot, mapping, properties)

  File "/Users/ahuang11/anaconda3/envs/tf/lib/python3.6/site-packages/holoviews/plotting/bokeh/element.py", line 1201, in _init_glyph
    self._draw_colorbar(plot, self.handles['color_mapper'])

  File "/Users/ahuang11/anaconda3/envs/tf/lib/python3.6/site-packages/holoviews/plotting/bokeh/element.py", line 1100, in _draw_colorbar
    **dict(opts, **self.colorbar_opts))

TypeError: MetaModel object got multiple values for keyword argument 'ticker'
Run Code Online (Sandbox Code Playgroud)

phi*_*jfr 5

可以在DimensionHoloViews Elements 的对象上设置颜色范围和所有其他范围。声明HeatMap三个(或更多)尺寸时。前两个是kdims与HeatMap的x轴和y轴相对应的关键尺寸()。其次,存在两个或多个值维度(vdims),其中第一个映射到颜色范围。构造对象时,可以明确声明尺寸范围。在这里,我们设置“ z”维度的颜色,该颜色应该是您要绘制的任何列的名称:

hv.HeatMap(..., vdims=hv.Dimension('z', range=(0, 10)))
Run Code Online (Sandbox Code Playgroud)

您还可以使用该redim界面在事后覆盖范围。当您有一个对象集合时,这也将起作用,因为它将对包含该维度的所有对象递归设置范围并返回一个新对象。看起来像这样:

heatmap = hv.HeatMap(...)
redimensioned_heatmap = heatmap.redim.range(z=(0, 10))
Run Code Online (Sandbox Code Playgroud)

  • 现在,我认为你可以做 `hv_obj.opts(clim=(0, 10))` (6认同)
  • 对于hvplot用户:值维不是'z',而是您在`C = <???>'中设置的任何值。您可以使用print(heatmap.vdims)检查名称。然后,您可以使用`heatmap.redim.range(my_col =(0,10))`或`heatmap.redim.range(** {str(heatmap.vdims [0]):( 0,10) })`。这花了我很多时间去弄清楚。 (3认同)
  • @K.-MichaelAye 您需要将选项定位到正确的类型,如果您将其设置在 AdjointLayout 上,那么您尝试将其设置在哪个元素上是不明确的。因此,如果您尝试定位 HeatMap,则应该使用 `hv_obj.opts(hv.opts.HeatMap(clim=(0, 10)))` 或者如果没有覆盖,您也可以使用 `hv_obj.apply.opts (爬升=(0, 10)) (2认同)