📜  密谋-格式化轴和刻度

📅  最后修改于: 2020-11-29 07:04:29             🧑  作者: Mango


您可以通过指定线宽和颜色来配置每个轴的外观。也可以定义网格宽度和网格颜色。让我们在本章中详细了解相同的内容。

用轴和刻度线绘图

在Layout对象的属性中,将showticklabels设置为true将启用刻度线。 tickfont属性是一个dict对象,用于指定字体名称,大小,颜色等。tickmode属性可以具有两个可能的值-linear和array。如果它是线性的,则开始刻度的位置由tick0确定,而刻度之间的间隔由dtick属性确定。

如果tickmode设置为array,则必须提供值列表和标签作为tickvalticktext属性。

布局对象还将Exponentformat属性设置为‘e’,将使刻度值以科学计数法显示。您还需要将showexponent属性设置为‘all’

现在,我们在上面的示例中设置Layout对象的格式,以通过指定行,网格和标题字体属性以及刻度模式,值和字体来配置x和y轴

layout = go.Layout(
   title = "Sine and cos",
   xaxis = dict(
      title = 'angle',
      showgrid = True,
      zeroline = True,
      showline = True,
      showticklabels = True,
      gridwidth = 1
   ),
   yaxis = dict(
      showgrid = True,
      zeroline = True,
      showline = True,
      gridcolor = '#bdbdbd',
      gridwidth = 2,
      zerolinecolor = '#969696',
      zerolinewidth = 2,
      linecolor = '#636363',
      linewidth = 2,
      title = 'VALUE',
      titlefont = dict(
         family = 'Arial, sans-serif',
         size = 18,
         color = 'lightgrey'
      ),
      showticklabels = True,
      tickangle = 45,
      tickfont = dict(
      family = 'Old Standard TT, serif',
      size = 14,
      color = 'black'
      ),
      tickmode = 'linear',
      tick0 = 0.0,
      dtick = 0.25
   )
)

用轴和刻度线绘制

多轴绘图

有时在图形中具有双x或y轴很有用;例如,当一起绘制具有不同单位的曲线时。 Matplotlib支持这一与twinxtwiny功能。在以下示例中,该图具有两个y轴,一个显示exp(x) ,另一个显示log(x)

x = np.arange(1,11)
y1 = np.exp(x)
y2 = np.log(x)
trace1 = go.Scatter(
   x = x,
   y = y1,
   name = 'exp'
)
trace2 = go.Scatter(
   x = x,
   y = y2,
   name = 'log',
   yaxis = 'y2'
)
data = [trace1, trace2]
layout = go.Layout(
   title = 'Double Y Axis Example',
   yaxis = dict(
      title = 'exp',zeroline=True,
      showline = True
   ),
   yaxis2 = dict(
      title = 'log',
      zeroline = True,
      showline = True,
      overlaying = 'y',
      side = 'right'
   )
)
fig = go.Figure(data=data, layout=layout)
iplot(fig)

此处,其他y轴配置为yaxis2,并显示在右侧,标题为“ log” 。结果图如下-

多轴绘图