python - 在 Matplotlib 中,如何避免 axvspan 重叠?

标签 python matplotlib plot

我注意到两个相邻的区域重叠,所以中间出现了一条烦人的线。 我尝试使用“capstyle = 'butt'”来避免行之间的重叠,但在这里它不起作用。

这是一个最小的例子:

import matplotlib.pylab as plt

ax = plt.subplot(111)

ax.axvspan(0, 0.5, color = 'red', alpha = 0.13, capstyle = 'butt')
ax.axvspan(0.5, 1, color = 'blue', alpha = 0.13, capstyle = 'butt')

plt.show()

最佳答案

您遇到的问题不是线帽引起的,因为 axvspan 绘制了一个多边形。问题在于,默认情况下,此多边形的边框具有给定的线宽(我想是一个像素)。

因此,要获得没有“边界”的区域,请将线宽 (lw) 设置为零:

import matplotlib.pylab as plt

ax = plt.subplot(111)

ax.axvspan(0, 0.5, color = 'red', alpha = 0.13, lw=0)
ax.axvspan(0.5, 1, color = 'blue', alpha = 0.13, lw=0)

plt.show()

关于python - 在 Matplotlib 中,如何避免 axvspan 重叠?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41898094/

相关文章:

java - JFreechart 循环遍历极坐标图扇区

Python ThreadingMixin 和 BaseHTTPServer

r - 绘制太多点?

python - 如何在更新 DRF 序列化器方法中确定 PATCH 请求

python - 在独特的函数调用下重新缩放 Matplotlib imshow 中的 Axis

python - 修改二维数组的 matplotlib colorbar 图上的轴

python - 如何在 matplotlib 的堆叠条形图中交替颜色?

r - 仅在 R 中的 ANOVA 循环上打印显着结果

python - 从 Csv 字符串中删除回车

python - 尝试在 Python 中从头开始打印目录系统树(无导入模块)