You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Matplotlib绘制指定X轴刻度的散点图(实际需箱线图)

基于给定数据集绘制箱线图(含原散点图需求实现)

先整理你的数据集:

a1 = [81, 42, 73, 94, 85, 66]
a2 = [63, 55, 79, 65, 94, 76]
a3 = [3, 5, 4, 8, 7, 6]
data = [a1, a2, a3]
labels = ['a1', 'a2', 'a3']

绘制箱线图

用Matplotlib可以快速实现你需要的箱线图,代码如下:

import matplotlib.pyplot as plt

plt.figure(figsize=(8, 6))
# 传入数据集和X轴标签
plt.boxplot(data, labels=labels)
plt.ylabel('数值')
plt.title('a1、a2、a3数据集箱线图')
# 添加Y轴网格线提升可读性
plt.grid(axis='y', linestyle='--', alpha=0.7)
plt.show()

这段代码生成的箱线图会展示每个数据集的中位数、上下四分位数、极值等统计特征,能直观对比三组数据的分布差异。

原散点图需求实现(参考)

如果你需要验证最初的散点图需求,这里提供实现代码:

import matplotlib.pyplot as plt

plt.figure(figsize=(8, 6))
x_positions = [1, 2, 3]  # 对应a1、a2、a3的X轴位置

for x, arr in zip(x_positions, data):
    # 给同组数据点添加微小X偏移,避免点重叠
    point_offsets = [x + 0.05 * (i - 2.5) for i in range(len(arr))]
    plt.scatter(point_offsets, arr, color='steelblue', alpha=0.7)

# 设置X轴刻度
plt.xticks(x_positions, labels)
plt.ylabel('数值')
plt.title('a1、a2、a3数据集散点图')
plt.grid(axis='y', linestyle='--', alpha=0.7)
plt.show()

通过给每个点添加微小偏移,能避免同一X刻度下的点完全重叠,更清晰展示每个数据点的位置。

内容的提问来源于stack exchange,提问作者Katono

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 07:25:23