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


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


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

matplotlib.axes.Axes.scatter()函数

matplotlib库的axiss模块中的Axes.scatter()函数用于绘制具有变化的标记大小和/或颜色的y与x的散点图。

用法: Axes.scatter(self, x, y, s=None, c=None, marker=None, cmap=None, norm=None, vmin=None, vmax=None, alpha=None, linewidths=None, verts=, edgecolors=None, *, plotnonfinite=False, data=None, **kwargs)


参数:此方法接受以下描述的参数:

  • x, y:这些参数是数据点的水平和垂直坐标。
  • s:此参数是可选参数,它包含大小为点** 2的标记。
  • c:此参数是可选参数,它包含颜色顺序。
  • marker:此参数也是可选参数。它包含标记样式。
  • cmap:该参数也是可选参数,包含注册的颜色图名称。默认值为NONE。
  • norm:此参数也是可选参数。它用于将亮度数据缩放为0、1。其默认值为NONE。
  • vmin, vmax:这些参数与标准结合使用,以默认值None标准化亮度数据。
  • alpha:此参数也是可选参数。它们在0(透明)和1(不透明)之间混合值。
  • linewidths:此参数也是可选参数。它是标记边的线宽,其默认值为“无”。
  • edgecolors:此参数也是可选参数。它是颜色或{'face','none',None}的顺序。
  • plotnonfiniteboolean:此参数也是可选参数。它是标记边的线宽,其默认值为“无”。

返回值:这将返回容器,它包含以下内容:

  • plotline:这将返回x,y绘图标记和/或线的Line2D实例。
  • caplines:这将返回错误栏上限的Line2D实例的元组。
  • barlinecols:这将返回具有水平和垂直误差范围的LineCollection元组。

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

示例1:

# Implementation of matplotlib function 
      
import matplotlib.pyplot as plt 
import numpy as np 
  
# unit value1 ellipse 
rx, ry = 3., 1.
value1 = rx * ry * np.pi 
value2 = np.arange(0, 3 * np.pi + 0.01, 0.2) 
  
value3 = np.column_stack([rx / value1 * np.cos(value2), 
                          ry / value1 * np.sin(value2)]) 
  
x, y, s, c = np.random.rand(4, 99) 
s *= 10**2.
  
fig, ax = plt.subplots() 
ax.scatter(x, y, s, c, marker = value3) 
ax.set_title("matplotlib.axes.Axes.scatter Example1") 
plt.show()

输出:

示例2:

# Implementation of matplotlib function 
      
import numpy as np 
import matplotlib.pyplot as plt 
  
# first define the ratios 
r1 = 0.2
r2 = r1 + 0.3
r3 = r2 + 0.7
  
# define some sizes of the 
# scatter marker 
sizes = np.array([60, 80, 120, 50]) 
  
# calculate the points of the 
# first pie marker 
x1 = np.cos(2 * np.pi * np.linspace(0, r1)) 
y1 = np.sin(2 * np.pi * np.linspace(0, r1)) 
  
xy1 = np.row_stack([[0, 0], 
                    np.column_stack([x1, y1])]) 
  
s1 = np.abs(xy1).max() 
  
x2 = np.cos(2 * np.pi * np.linspace(r1, r2)) 
y2 = np.sin(2 * np.pi * np.linspace(r1, r2)) 
  
xy2 = np.row_stack([[0, 0],  
                    np.column_stack([x2, y2])]) 
  
s2 = np.abs(xy2).max() 
  
x3 = np.cos(2 * np.pi * np.linspace(r2, r3)) 
y3 = np.sin(2 * np.pi * np.linspace(r2, r3)) 
xy3 = np.row_stack([[0, 0], 
                    np.column_stack([x3, y3])]) 
  
s3 = np.abs(xy3).max() 
  
x4 = np.cos(2 * np.pi * np.linspace(r3, 1)) 
y4 = np.sin(2 * np.pi * np.linspace(r3, 1)) 
xy4 = np.row_stack([[0, 0], 
                    np.column_stack([x4, y4])]) 
  
s4 = np.abs(xy4).max() 
  
fig, ax = plt.subplots() 
ax.scatter(range(3), range(3), 
           marker = xy1, s = s1**2 * sizes,  
           facecolor ='blue') 
  
ax.scatter(range(3), range(3), 
           marker = xy2, s = s2**2 * sizes, 
           facecolor ='green') 
  
ax.scatter(range(3), range(3), 
           marker = xy3, s = s3**2 * sizes,  
           facecolor ='red') 
  
ax.scatter(range(3), range(3), 
           marker = xy4, s = s4**2 * sizes, 
           facecolor ='black') 
  
ax.set_title("matplotlib.axes.Axes.scatter Example2") 
plt.show()

输出:




相关用法


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