matplotlib.axes.axes.bxp()
matplotlib.axes.axes.bxp()函数,matplotlib库的Axes模块中的Axes.bxp()函数用于为x的每一列或序列x的每一个向量绘制盒须图。
语法:
Axes.bxp(self, bxpstats, positions=None, widths=None, vert=True, patch_artist=False, shownotches=False, showmeans=False, showcaps=True, showbox=True, showfliers=True, boxprops=None, whiskerprops=None, flierprops=None, medianprops=None, capprops=None, meanprops=None, meanline=False, manage_ticks=True, zorder=None)
参数:该方法接受如下参数说明:
- bxpstats:该参数是包含每个箱线图统计信息的字典列表。
- position:设置小提琴的位置。
- vert:可选参数,包含布尔值。它使垂直小提琴情节,如果为真.否则水平。
- widths:该参数用于设置每个小提琴的宽度,可以是标量宽度,也可以是序列宽度。
- patch_artist:如果为false,该参数用于生成带有Line2D艺术家的方框。否则,补丁艺术家的盒子。
- manage_ticks:调整tick的位置和标签。
- zorder:该参数用于设置箱线图的zorder。
- shownotches:布尔值。它被用来制作一个有缺口的矩形盒子图。
- showmeans:该参数包含布尔值。它用于切换方法的呈现。
- showcaps:包含布尔值。它用于切换caps的渲染。
- showfliers:该参数包含布尔值。它用于切换传单的渲染。
- boxprops:用于设置方框的绘图样式。
- whiskerprops:设置须的绘图样式。
- capprops:设置caps的绘图样式。
- flierprops:该参数用于设置传单的绘图样式。
- medianprops:该参数用于设置中值的绘图样式。
- meanprops:该参数用于设置平均值的绘图样式。
返回如下内容:
- result:返回将violinplot的每个组件映射到matplotlib.lines.Line2D实例列表的字典。
下面的例子演示了matplotlib.axes中的matplotlib.axes.bxp()函数:
示例1
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.cbook as cbook
np.random.seed(10**7)
data = np.random.lognormal(size =(10, 4),
mean = 4.5,
sigma = 4.75)
labels = ['G1', 'G2', 'G3', 'G4']
result = cbook.boxplot_stats(data,
labels = labels,
bootstrap = 1000)
for n in range(len(result)):
result[n]['med'] = np.median(data)
result[n]['mean'] *= 0.1
fig, axes1 = plt.subplots()
axes1.bxp(result)
axes1.set_title('matplotlib.axes.Axes.bxp() Example')
plt.show()
输出:
示例2
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.cbook as cbook
np.random.seed(10**7)
data = np.random.lognormal(size =(37, 4),
mean = 4.5,
sigma = 1.75)
labels = ['G1', 'G2', 'G3', 'G4']
stats = cbook.boxplot_stats(data, labels = labels,
bootstrap = 100)
for n in range(len(stats)):
stats[n]['med'] = np.median(data)
stats[n]['mean'] *= 2
fig, [axes1, axes2, axes3] = plt.subplots(nrows = 1,
ncols = 3,
sharey = True)
axes1.bxp(stats)
axes2.bxp(stats, showmeans = True)
axes3.bxp(stats, showmeans = True, meanline = True)
axes2.set_title('matplotlib.axes.Axes.bxp() Example')
plt.show()
输出: