Arviz 和 Bokeh:尝试使用后端 kwargs 更改情节的标题
Arviz and Bokeh: Trying to change the title of the plot using backend kwargs
我正在尝试更改我使用 Arviz 创建的绘图的标题。通常我使用 backend_kwargs
完成此操作,但它似乎不适用于某些地块:在这种情况下 plot_density
.
这是我正在使用的代码:
kwg = dict(title="prior_1", height=500)
plot = az.plot_density(
data_m[0],
group='posterior',
var_names='switchpoint',
backend='bokeh',
shade=.5,
backend_kwargs=kwg
)
它识别出 kwargs
中的高度变化,所以它不像没有注意到它们在那里。
我也尝试过其他变体,例如 plot_title=
,它会产生一个错误,指定它需要 title=
ArviZ 初始化 Bokeh Plot instances using the alias figure。如您所见,阅读 Plot
上的文档,title
是一个有效的论点。然而,出于多种原因,ArviZ 在创建绘图时不使用此参数,而是在之后设置标题。因此,您的论点正在被识别并仅用于被覆盖。
plot_density
将每个图的标题设置为变量名称,如果是多维的,则设置其坐标。而且,除了多个变量(每个变量都可以是多维的),它还支持同时绘制多个模型(因此不同 InferenceData
objects)。您可以使用参数 data_labels
来设置图例标签。在 ArviZ's example gallery 中可以看到这方面的示例,您甚至可以单击图例隐藏模型。
因此,要达到预期效果,您必须在调用 plot_density
后手动修改标题,这可以通过多加几行来完成。您必须用 show=False
调用 plot_density
,以便之后可以修改图形。然后可以从 plot_density
.
返回的数组中存储的元素编辑标题
kwg = dict(height=500)
axes = az.plot_density(
data_m[0],
group="posterior",
var_names="switchpoint",
backend="bokeh",
shade=0.5,
backend_kwargs=kwg,
show=False
)
axes[0,0].title.text = "prior_1"
az.plots.backends.show_layout(axes)
如果您有多个包含多个多维变量的绘图,则必须通过遍历数组来编辑每个变量的标题。
我正在尝试更改我使用 Arviz 创建的绘图的标题。通常我使用 backend_kwargs
完成此操作,但它似乎不适用于某些地块:在这种情况下 plot_density
.
这是我正在使用的代码:
kwg = dict(title="prior_1", height=500)
plot = az.plot_density(
data_m[0],
group='posterior',
var_names='switchpoint',
backend='bokeh',
shade=.5,
backend_kwargs=kwg
)
它识别出 kwargs
中的高度变化,所以它不像没有注意到它们在那里。
我也尝试过其他变体,例如 plot_title=
,它会产生一个错误,指定它需要 title=
ArviZ 初始化 Bokeh Plot instances using the alias figure。如您所见,阅读 Plot
上的文档,title
是一个有效的论点。然而,出于多种原因,ArviZ 在创建绘图时不使用此参数,而是在之后设置标题。因此,您的论点正在被识别并仅用于被覆盖。
plot_density
将每个图的标题设置为变量名称,如果是多维的,则设置其坐标。而且,除了多个变量(每个变量都可以是多维的),它还支持同时绘制多个模型(因此不同 InferenceData
objects)。您可以使用参数 data_labels
来设置图例标签。在 ArviZ's example gallery 中可以看到这方面的示例,您甚至可以单击图例隐藏模型。
因此,要达到预期效果,您必须在调用 plot_density
后手动修改标题,这可以通过多加几行来完成。您必须用 show=False
调用 plot_density
,以便之后可以修改图形。然后可以从 plot_density
.
kwg = dict(height=500)
axes = az.plot_density(
data_m[0],
group="posterior",
var_names="switchpoint",
backend="bokeh",
shade=0.5,
backend_kwargs=kwg,
show=False
)
axes[0,0].title.text = "prior_1"
az.plots.backends.show_layout(axes)
如果您有多个包含多个多维变量的绘图,则必须通过遍历数组来编辑每个变量的标题。