要在bokeh中创建直方图,我可以使用:
p = Histogram(results, yscale="linear", bins=50, title = 'hist plot')
show(p)
但yscale的选项只有“线性”、“分类”、“日期时间”
你知道如何创建一个对数Y刻度的直方图吗?
最佳答案
似乎Histogram
不允许这样做,但您可以尝试这种低级方法(部分基于类似问题的answer和文档中的this example)。
import numpy as np
from bokeh.plotting import figure, show
from bokeh.sampledata.autompg import autompg as df
p = figure(tools="pan,wheel_zoom,box_zoom,reset,previewsave",
y_axis_type="log", y_range=[10**(-4), 10**0], title="log histogram")
hist, edges = np.histogram(df['mpg'], density=True, bins=50)
p.quad(top=hist, bottom=0, left=edges[:-1], right=edges[1:],
fill_color="#036564", line_color="#033649")