matplotlib.pyplot.clabel()函数

matplotlib.pyplot.clabel()函数

等高线图或水平图是在二维平面上显示三维曲面的一种方法。它在y轴上画出一个输出变量z和两个预测变量x和y的等高线。通常这种等高线也被称为z形切片。

mathplotlib.pyplot中的clabel()方法用于向类实例中的线轮廓添加标签,以支持轮廓绘图。

语法:matplotlib.pyplot.clabel(CS, levels=None, **kwargs)

参数:

  • CS:将ContourSet设置为标签。
  • levels:应该标记的级别值列表。列表必须是cs# @级别的子集。如果没有给出,所有级别都会被标记。它是一个可选参数(默认值为None)。
  • fontsize:以点或相对大小e.g表示的大小。“小”,“从小到大”。查看Text.set_size获取可接受的字符串值。
  • colors:标签颜色-
    1. 如果为None,则每个标签的颜色与对应的轮廓颜色相匹配。
    2. 如果一个字符串的颜色,e.g。, colors = ‘ r ‘或colors = ‘ red ‘,则所有标签都将使用此颜色绘制。
    3. 如果matplotlib颜色参数(string, float, rgb等)的元组,不同的标签将按照指定的顺序以不同的颜色绘制。

下面是一些演示matplotlib.pyplot.clabel()使用的程序:

示例1

创建一个使用默认颜色标签的简单轮廓图。clabel的内联参数将控制是否在轮廓线段上绘制标签,删除标签下面的线。

# importing the required libraries
import numpy 
import matplotlib.pyplot 
  
# creating the graph
delta = 0.025
x = numpy.arange(-3.0, 3.0, delta)
y = numpy.arange(-2.0, 2.0, delta)
X, Y = numpy.meshgrid(x, y)
  
Z1 = numpy.exp(-X**2 - Y**2)
Z2 = numpy.exp(-(X - 1)**2 - (Y - 1)**2)
Z = (Z1 - Z2) * 2
  
# adding labels to the line contours
fig, ax = matplotlib.pyplot.subplots()
CS = ax.contour(X, Y, Z)
ax.clabel(CS, inline=1, fontsize=10)
ax.set_title('Simplest default with labels')

输出:

matplotlib.pyplot.clabel()函数

示例2

轮廓标签可以通过提供位置列表(在数据坐标中)来手动放置。请参阅ginput_manual_clabel.py了解交互式位置。

# importing the required libraries
import numpy 
import matplotlib.pyplot 
  
# creating the graph
delta = 0.025
x = numpy.arange(-3.0, 3.0, delta)
y = numpy.arange(-2.0, 2.0, delta)
X, Y = numpy.meshgrid(x, y)
  
Z1 = numpy.exp(-X**2 - Y**2)
Z2 = numpy.exp(-(X - 1)**2 - (Y - 1)**2)
Z = (Z1 - Z2) * 2
  
# adding labels to the line contours
fig, ax = matplotlib.pyplot.subplots()
CS = ax.contour(X, Y, Z)
manual_locations = [(-1, -1.4), (-0.62, -0.7), 
                    (-2, 0.5), (1.7, 1.2), 
                    (2.0, 1.4), (2.4, 1.7)]
  
ax.clabel(CS, inline=1, fontsize=10, manual=manual_locations)
ax.set_title('labels at selected locations')

输出:

matplotlib.pyplot.clabel()函数

示例3

你可以强制所有的轮廓都是相同的颜色。

# importing the required libraries
import numpy 
import matplotlib.pyplot 
  
# creating the graph
delta = 0.025
x = numpy.arange(-3.0, 3.0, delta)
y = numpy.arange(-2.0, 2.0, delta)
X, Y = numpy.meshgrid(x, y)
  
Z1 = numpy.exp(-X**2 - Y**2)
Z2 = numpy.exp(-(X - 1)**2 - (Y - 1)**2)
Z = (Z1 - Z2) * 2
  
# adding labels to the line contours
fig, ax = matplotlib.pyplot.subplots()
CS = ax.contour(X, Y, Z, 6,
                 colors='k',
                 )
  
ax.clabel(CS, fontsize=9, inline=1)
ax.set_title('Single color - negative contours dashed')

输出:

matplotlib.pyplot.clabel()函数

示例4

你可以将负轮廓设置为实线而不是虚线:

# importing the required libraries
import numpy 
import matplotlib.pyplot 
  
# creating the graph
delta = 0.025
x = numpy.arange(-3.0, 3.0, delta)
y = numpy.arange(-2.0, 2.0, delta)
X, Y = numpy.meshgrid(x, y)
  
Z1 = numpy.exp(-X**2 - Y**2)
Z2 = numpy.exp(-(X - 1)**2 - (Y - 1)**2)
Z = (Z1 - Z2) * 2
  
# adding labels to the line contours
matplotlib.rcParams['contour.negative_linestyle'] = 'solid'
fig, ax = matplotlib.pyplot.subplots()
CS = ax.contour(X, Y, Z, 6,
                 colors='k',
                 )
  
ax.clabel(CS, fontsize=9, inline=1)
ax.set_title('Single color - negative contours solid')

输出:

matplotlib.pyplot.clabel()函数

示例5

您可以手动指定轮廓的颜色。

# importing the required libraries
import numpy 
import matplotlib.pyplot 
  
# creating the graph
delta = 0.025
x = numpy.arange(-3.0, 3.0, delta)
y = numpy.arange(-2.0, 2.0, delta)
X, Y = numpy.meshgrid(x, y)
  
Z1 = numpy.exp(-X**2 - Y**2)
Z2 = numpy.exp(-(X - 1)**2 - (Y - 1)**2)
Z = (Z1 - Z2) * 2
  
# adding labels to the line contours
fig, ax = matplotlib.pyplot.subplots()
CS = ax.contour(X, Y, Z, 6,
                 linewidths=np.arange(.5, 4, .5),
                 colors=('r', 'green', 'blue',
                         (1, 1, 0), '#afeeee', '0.5')
                 )
  
ax.clabel(CS, fontsize=9, inline=1)
ax.set_title('Crazy lines')

输出:

matplotlib.pyplot.clabel()函数

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程