首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Holoviews热图X轴格式设置

Holoviews热图X轴格式设置
EN

Stack Overflow用户
提问于 2019-02-08 08:59:41
回答 1查看 473关注 0票数 2

我目前正在做一个使用全息视图的项目,我请求帮助。我正在创建一个热图,它为给定的模拟轮次与模拟步骤绘制模型的值。当只有少量的轮次或步数时,热图看起来很好。但是,如果我增加轮数或步数,轴会变得非常拥挤,如下所示。有没有办法在X或Y轴上只显示几个刻度线(例如,在下面的示例中,只在x轴上显示数字0、15、30、45和60 )?

Crowded x-axis due to too many steps in each simulation

我的代码如下:

代码语言:javascript
复制
#Generate a heatmap for each element
for element_key in loop_elements:
    heatData = []
    for i in range(runs):
        heatValues = plot_data[element_key][i]['y']
        for j in range(steps):
            heatElement = [(j, i, heatValues[j])]
            heatData += heatElement
    heatImage = hv.HeatMap(heatData, kdims=['x', 'y'], vdims=['z'])
    heatImage.opts(cmap=cmap, colorbar=True, title=element_key, xlabel="Simulation Step", ylabel="Simulation Round", toolbar=None, height=800, width=800)
    heatImage = heatImage.redim.range(z=(0,numStates-1))
    heatImage = heatImage.opts(xticks=5)
    hv.save(heatImage, os.path.join(outputFilepath, "HeatMap" + element_key + ".png"))` 

不幸的是,使用.opts来指定xtick的数量并不能正常工作。

EN

回答 1

Stack Overflow用户

发布于 2019-02-08 21:22:41

在这里,您有规则间隔的数值轴,因此您可以用hv.Image替换hv.HeatMaphv.Image将轴视为数值,因此可以跳过这些值,并且应该允许您控制xtick。或者,您可以使用xrotation=90来旋转标签,使它们不会重叠。如果轴的间距不是很规则,也可以使用hv.QuadMesh

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54584670

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档