微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

numpy – 突出单一轮廓线

我正在制作一个简单的轮廓图,我希望通过使其更厚并改变颜色来突出显示零线.

cs = ax1.contour(x,y,obscc)
ax1.clabel(cs,inline=1,fontsize=8,fmt='%3.1f')

我该如何实现这一目标?
谢谢 :-)

解决方法

HTH – 这基本上是从 matplotlib docs获取的轮廓示例,只是修改了水平线

从contour-method返回的对象在其collections属性中保存对轮廓线的引用.
轮廓线只是常见的LineCollections.

在下面的代码片段中,对等高线图的引用是在CS中(在您的问题中是cs):

CS.collections[0].set_linewidth(4)           # the dark blue line
CS.collections[2].set_linewidth(5)           # the cyan line,zero level
CS.collections[2].set_linestyle('dashed')
CS.collections[3].set_linewidth(7)           # the red line
CS.collections[3].set_color('red')
CS.collections[3].set_linestyle('dotted')

type(CS.collections[0])
# matplotlib.collections.LineCollection

如果您没有明确指定它们,请参阅以下内容

CS.levels
array([-1.,-0.5,0.,0.5,1.,1.5])

格式化单个标签还有很多功能

CS.labelCValueList    CS.labelIndiceList    CS.labelTextsList
CS.labelCValues       CS.labelLevelList     CS.labelXYs
CS.labelFmt           CS.labelManual        CS.labels
CS.labelFontProps     CS.labelMappable      CS.layers
CS.labelFontSizeList  CS.labelTexts

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐