【问题标题】:Remove x axis and y axis black lines with matplotlib用 matplotlib 去除 x 轴和 y 轴黑线
【发布时间】:2017-10-20 10:07:11
【问题描述】:

我正在尝试从 x 轴和 y 轴移除黑线并留下标签(字母和数字)但没有成功。我已经使用以下代码完成了右侧和顶部:

ax.spines['top'].set_visible(False)
ax.spines['right'].set_visible(False)
ax.get_xaxis().tick_bottom()
ax.get_yaxis().tick_left()

如果我尝试使用:

ax.axes.get_xaxis().set_visible(False)

它删除了标签,但黑线继续存在。任何提示如何实现这一目标?我正在尝试将使用 matplotlib 完成的一些图表更改为更“干净”的版本。谢谢。

我的图表如下所示:

【问题讨论】:

  • 除了下面的答案之外,如果您还想删除刻度线,您可以使用ax.tick_params(axis=u'both', which=u'both',length=0)
  • 非常有用。谢谢

标签: python matplotlib axis


【解决方案1】:

你可以让所有的刺不可见:

for spine in ax.spines.values():
    spine.set_visible(False)

另外,正如大卫所建议的那样:

ax.tick_params(axis=u'both', which=u'both',length=0)

【讨论】:

    【解决方案2】:

    你应该可以像这样将边缘的颜色设置为白色

    for edge_i in ['top', 'bottom', 'right', 'left']:
        ax.spines[edge_i].set_edgecolor("white")
    

    希望对你有帮助

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-05
      • 1970-01-01
      • 2013-08-16
      • 1970-01-01
      • 2015-06-10
      • 2021-05-22
      相关资源
      最近更新 更多