如何仅显示散景中的第n个分类报价

发布于 2021-01-29 15:00:28

两年前有同样的问题。当时似乎不支持第n个分类报价器。

https://stackoverflow.com/questions/34949298/python-bokeh-show-only-every-
second-categorical-ticker

我的bokeh版本是0.12.13。我想知道现在是否支持它。

简单地设置p.xaxis.ticker = [‘A’,’B,’C’]不起作用(抛出错误)

在我的dashbaord中,初始绘图大小为浏览器视图端口的四分之一,并且x轴上挤满了许多行情指示器和标签。因此,我只想显示10个股票,然后在情节放大时显示所有股票。

关注者
0
被浏览
87
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    散景没有内置功能可以做到这一点。您可以使用自定义扩展来完成一些工作:

    from bokeh.models CategoricalTicker
    
    JS_CODE = """
    import {CategoricalTicker} from "models/tickers/categorical_ticker"
    
    export class MyTicker extends CategoricalTicker
      type: "MyTicker"
    
      get_ticks: (start, end, range, cross_loc) ->
        ticks = super(start, end, range, cross_loc)
    
        # drops every other tick -- update to suit your specific needs
        ticks.major = ticks.major.filter((element, index) -> index % 2 == 0)
    
        return ticks
    
    """
    
    class MyTicker(CategoricalTicker):
        __implementation__ = JS_CODE
    
    p.xaxis.ticker = MyTicker()
    

    请注意,get_ticks上面定义的简单方法将无法处理嵌套类别等更复杂的情况。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看