【问题标题】:plotly: how to show broken axisplotly:如何显示断轴
【发布时间】:2020-05-01 11:27:00
【问题描述】:

我需要在我的情节中描绘一个“断轴”,因为其中一些值很大。举个例子:

import plotly.graph_objects as go
import numpy as np
y=np.arange(20)
y[0]=1000
go.Figure(go.Bar(
    y=y
))

This question 讨论了同样的 matplotlib,但我需要使用 plotly。

这是我想要创建的示例。

【问题讨论】:

  • 据我所知,你不能用 Plotly 做到这一点。你可以使用 matplotlib。
  • 是的,谢谢你的澄清
  • @NICO 不客气 =) 请考虑提供代码 sn-p 以及数据样本,而不是两次发布相同的问题,您还可以生成什么样的图形作为您想要的结果的一些描述。就目前而言,您的链接情节很难阅读。这样做会大大增加您获得有用答案的机会。 This 是个不错的起点
  • 问“我从哪里开始?”的问题通常过于宽泛,不适合本网站。人们有自己解决问题的方法,因此不可能有正确的答案。仔细阅读 Where to Start 和 edit 您的帖子。
  • 问题是有效的,修正了它的提问方式。

标签: python plotly axis-labels


【解决方案1】:

解决这个问题的一种方法是有两个子帧,如下所示:

import plotly.graph_objects as go
import plotly.express as px
import numpy as np

y=np.arange(20)
y[0]=1000

color = px.colors.sequential.Plasma[0]
cut_interval = [30, 700]
bar = go.Bar(
    y=y, name='foo',
    marker_color=color,
)
fig = make_subplots(
    rows=2, cols=1, 
    vertical_spacing = 0.05, 
    shared_xaxes=True,
)

fig.append_trace(bar, row=1, col=1)
bar.showlegend=False
fig.append_trace(bar, row=2, col=1)

fig.update_yaxes(range=[cut_interval[1], max(df.max()*1.1)], row=1, col=1)
fig.update_xaxes(visible=False, row=1, col=1)
fig.update_yaxes(range=[0, cut_interval[0]], row=2, col=1)

这将导致:

两个子帧在 x 轴上连接,因此可以平移它们。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-14
    • 2021-06-20
    • 1970-01-01
    • 1970-01-01
    • 2021-04-18
    相关资源
    最近更新 更多