【问题标题】:plotly python change y-axis values ​to your ownplotly python将y轴值更改为您自己的值
【发布时间】:2021-10-10 11:33:43
【问题描述】:

绘制随机值图。需要把Y轴的值改成其他的。

xg = np.random.rand(100, 1200)
fig = px.imshow(xg, aspect="auto",color_continuous_scale='ice')
fig.show()

要更改的值

y1=np.arange(100)*0.5
y2=np.arange(100)*5

谢谢!

【问题讨论】:

    标签: python-3.x plotly plotly-python


    【解决方案1】:
    • y 轴上的 100 个刻度太多了!用了 10 个
    • 定义您希望在值范围内打勾的位置 (100) 和要再次显示的文本域值 https://plotly.com/python/tick-formatting/#tickmode--array 的简单案例
    • 乘法相当于您的要求,只需生成适当长度的数组(十个刻度)
    import numpy as np
    import plotly.express as px
    
    xg = np.random.rand(100, 1200)
    fig = px.imshow(xg, aspect="auto",color_continuous_scale='ice')
    
    # y1
    fig.update_layout(yaxis={"tickmode":"array","tickvals":np.arange(10)*10, "ticktext":np.arange(10)*5}).show()
    # y2
    fig.update_layout(yaxis={"tickmode":"array","tickvals":np.arange(10)*10, "ticktext":np.arange(10)*50}).show()
    
    
    

    补充 - 显示两个 y 轴

    • 根据评论,您可以使用记录在案的方法https://plotly.com/python/multiple-axes/#multiple-axes
    • 您确实需要每个轴的轨迹,因此需要创建两条轨迹并修改第二条轨迹以使用 y2
    • 将第二个跟踪设置为"visible":False 不起作用。所以有两条相同的痕迹在彼此之上
    import numpy as np
    import plotly.express as px
    
    xg = np.random.rand(100, 1200)
    fig = px.imshow(xg, aspect="auto", color_continuous_scale="ice").add_traces(
        px.imshow(xg, aspect="auto", color_continuous_scale="ice")
        .update_traces(yaxis="y2")
        .data
    )
    
    fig.update_layout(
        xaxis={"domain": [0.05, 1]},
        yaxis={
            "tickmode": "array",
            "tickvals": np.arange(10) * 10,
            "ticktext": np.arange(10) * 50,
        },
        yaxis2={
            "tickmode": "array",
            "tickvals": np.arange(10) * 10,
            "ticktext": np.arange(10) * 5,
            "anchor": "free",
            "position": 0,
            "autorange": "reversed",
        },
    ).show()
    
    
    

    【讨论】:

    • 谢谢。是否可以让两个 Y 轴同时出现在一张图表上?
    • 是的,它已记录在案:plotly.com/python/multiple-axes/#multiple-axes。您将需要每个 y 轴的跟踪
    • 100 滴答声并不漂亮,但我需要数据的真实性。你能做到数据被隐藏,但显示在图表本身上吗?
    • 我在答案中插入了额外的代码。正如我所指出的,这在 plotly 文档中得到了充分解释
    猜你喜欢
    • 1970-01-01
    • 2022-07-12
    • 2017-04-22
    • 2018-09-22
    • 1970-01-01
    • 2019-01-24
    • 2014-09-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多