当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python Matplotlib.axes.Axes.add_line()用法及代码示例


Matplotlib是Python中的一个库,它是数字的-NumPy库的数学扩展。轴类包含大多数图形元素:Axis,Tick,Line2D,Text,Polygon等,并设置坐标系。 Axes实例通过callbacks属性支持回调。

matplotlib.axes.Axes.add_line()函数

matplotlib库的axiss模块中的Axes.add_line()函数用于将Line2D添加到坐标轴的线;返回行。

用法: Axes.add_line(self, line)


参数:此方法接受以下参数。

  • line:此参数是Line2D。

返回值:此方法返回该行。

以下示例说明了matplotlib.axes.Axes.add_line()matplotlib.axes中的函数:

范例1:

# Implementation of matplotlib function 
import numpy as np 
import matplotlib.pyplot as plt 
import matplotlib.lines as lines 
import matplotlib.transforms as mtransforms 
import matplotlib.text as mtext 
  
  
class GFGfun(lines.Line2D):
    def __init__(self, *args, **kwargs):
        self.text = mtext.Text(0, 0, '') 
        lines.Line2D.__init__(self, *args, **kwargs) 
        self.text.set_text(self.get_label()) 
  
    def set_figure(self, figure):
        self.text.set_figure(figure) 
        lines.Line2D.set_figure(self, figure) 
  
    def set_axes(self, axes):
        self.text.set_axes(axes) 
        lines.Line2D.set_axes(self, axes) 
  
    def set_transform(self, transform):
        # 2 pixel offset 
        texttrans = transform + mtransforms.Affine2D().translate(2, 2) 
        self.text.set_transform(texttrans) 
        lines.Line2D.set_transform(self, transform) 
  
    def set_data(self, x, y):
        if len(x):
            self.text.set_position((x[-1], y[-1])) 
  
        lines.Line2D.set_data(self, x, y) 
  
    def draw(self, renderer):
        lines.Line2D.draw(self, renderer) 
        self.text.draw(renderer) 
  
  
np.random.seed(10**7) 
  
  
fig, ax = plt.subplots() 
x, y = np.random.rand(2, 20) 
line = GFGfun(x, y, mfc ='green', ms = 12,  
              label ='Label') 
  
line.text.set_color('green') 
line.text.set_fontsize(16) 
  
ax.add_line(line) 
  
fig.suptitle('matplotlib.axes.Axes.add_line()\ 
 function Example\n\n', fontweight ="bold") 
plt.show()

输出:

范例2:

# Implementation of matplotlib function 
import random 
import matplotlib.lines as lines 
import matplotlib.patches as patches 
import matplotlib.text as text 
import matplotlib.collections as collections 
from basic_units import cm, inch 
import numpy as np 
import matplotlib.pyplot as plt 
  
fig, ax = plt.subplots() 
ax.xaxis.set_units(cm) 
ax.yaxis.set_units(cm) 
  
# Fixing random state for reproducibility 
np.random.seed(19680801) 
  
if 0:
    # test a line collection 
    # Not supported at present. 
    verts = [] 
    for i in range(10):
        # a random line segment in inches 
        verts.append(zip(*inch * 10 * np.random.rand(2, 
                                                     random.randint(2, 15)))) 
    lc = collections.LineCollection(verts, axes = ax) 
    ax.add_collection(lc) 
  
# test a plain-ol-line 
line = lines.Line2D([0 * cm, 1.5 * cm], 
                    [0 * cm, 2.5 * cm], 
                    lw = 2, color ='green', 
                    axes = ax, alpha = 0.7) 
  
ax.add_line(line) 
  
ax.grid(True) 
  
fig.suptitle('matplotlib.axes.Axes.add_line() \ 
function Example\n\n', fontweight ="bold") 
plt.show()

输出:




相关用法


注:本文由纯净天空筛选整理自SHUBHAMSINGH10大神的英文原创作品 Matplotlib.axes.Axes.add_line() in Python。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。