Python Matplotlib Box Plot Two Data Sets Side by Side(Python Matplotlib Box并排绘制两个数据集)
本文介绍了Python Matplotlib Box并排绘制两个数据集的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想用两个数据集做一个盒图。每一组都是一个浮点数列表。A和B是两个数据集的示例
A = []
B = []
for i in xrange(10):
l = [random.random() for i in xrange(100)]
m = [random.random() for i in xrange(100)]
A.append(l)
B.append(m)
我希望A和B的框图紧挨着出现,而不是彼此在一起。此外,我希望不同的x值之间有更大的差距,也许还需要更薄的盒子。我的代码在下面,它生成的图也是如此(当前的代码将A放在B的上面)。感谢您的帮助。
def draw_plot(data, edge_color, fill_color):
bp = ax.boxplot(data, patch_artist=True)
for element in ['boxes', 'whiskers', 'fliers', 'medians', 'caps']:
plt.setp(bp[element], color=edge_color)
plt.xticks(xrange(11))
for patch in bp['boxes']:
patch.set(facecolor=fill_color)
fig, ax = plt.subplots()
draw_plot(A, "tomato", "white")
draw_plot(B, "skyblue", "white")
plt.savefig('sample_box.png', bbox_inches='tight')
plt.close()
推荐答案
查看BoxPlot的文档,我们发现它有一个positions
参数,可以用来设置BoxPlot的位置。您需要提供一个列表或数组,其中包含您想要绘制的框图所需数量的元素。
import numpy as np; np.random.seed(1)
import matplotlib.pyplot as plt
A = np.random.rand(100,10)
B = np.random.rand(100,10)
def draw_plot(data, offset,edge_color, fill_color):
pos = np.arange(data.shape[1])+offset
bp = ax.boxplot(data, positions= pos, widths=0.3, patch_artist=True, manage_xticks=False)
for element in ['boxes', 'whiskers', 'fliers', 'medians', 'caps']:
plt.setp(bp[element], color=edge_color)
for patch in bp['boxes']:
patch.set(facecolor=fill_color)
fig, ax = plt.subplots()
draw_plot(A, -0.2, "tomato", "white")
draw_plot(B, +0.2,"skyblue", "white")
plt.xticks(xrange(10))
plt.savefig(__file__+'.png', bbox_inches='tight')
plt.show()
plt.close()
这篇关于Python Matplotlib Box并排绘制两个数据集的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:Python Matplotlib Box并排绘制两个数据集


猜你喜欢
- 检查具有纬度和经度的地理点是否在 shapefile 中 2022-01-01
- CTR 中的 AES 如何用于 Python 和 PyCrypto? 2022-01-01
- 如何使用PYSPARK从Spark获得批次行 2022-01-01
- ";find_element_by_name(';name';)";和&QOOT;FIND_ELEMENT(BY NAME,';NAME';)";之间有什么区别? 2022-01-01
- 使用公司代理使Python3.x Slack(松弛客户端) 2022-01-01
- 使用 Cython 将 Python 链接到共享库 2022-01-01
- 我如何卸载 PyTorch? 2022-01-01
- YouTube API v3 返回截断的观看记录 2022-01-01
- 计算测试数量的Python单元测试 2022-01-01
- 我如何透明地重定向一个Python导入? 2022-01-01