在matplotlib中,如何在图形的两侧显示轴?

sta*_*tti 16 python graphics plot matplotlib

我想在绘图的两边用matplotlib画一个带有轴的图,类似于这个图(颜色与这个问题无关):

情节

我怎么能这样做matplotlib

注意:与示例图中显示的相反,我希望两个轴完全相同,并且只想显示一个图.添加两个轴只是为了更容易读取图形.

kis*_*kin 52

你可以使用tick_params()(我在Jupyter笔记本中做过):

import matplotlib.pyplot as plt

bar(range(10), range(10))
tick_params(labeltop=True, labelright=True)
Run Code Online (Sandbox Code Playgroud)

生成此图片:

标有x和y轴的条形图标记相同

UPD:为子图添加了一个简单的例子.您应该使用tick_params()轴对象.

此代码设置为仅显示顶部子图的顶部标签和底部子图的底部标签(具有相应的刻度):

import matplotlib.pyplot as plt

f, axarr = plt.subplots(2)

axarr[0].bar(range(10), range(10))
axarr[0].tick_params(labelbottom=False, labeltop=True, labelleft=False, labelright=False,
                     bottom=False, top=True, left=False, right=False)

axarr[1].bar(range(10), range(10, 0, -1))
axarr[1].tick_params(labelbottom=True, labeltop=False, labelleft=False, labelright=False,
                     bottom=True, top=False, left=False, right=False)
Run Code Online (Sandbox Code Playgroud)

看起来像这样:

Subplots ticks配置示例


Joh*_*mew 13

在线文档中有几个相关示例:

  • 在我希望两个轴完全相同的情况下,是否有更专业的功能? (2认同)