Skip to content

📊 使用 plt.vlines() 在数据可视化中的六个常见示例

Updated on

了解如何使用 matplotlib 的 vlines 函数,通过竖线增强您的数据可视化效果。探索图表示例和可以直接复制使用的代码片段。

在处理时间序列、直方图或自定义绘图时,matplotlib.pyplot.vlines() 可能会出乎意料地好用。这个简单的函数可以绘制竖线,且通过创造性地使用,可以让你的图表更具表现力、更易理解和更具信息量。

在本文中,我们将介绍六个实用的 plt.vlines() 用例,它们不仅仅是“画一条线”。每个例子都配有示范代码,帮助你在自己的数据科学项目中应用。


1. 🔴 突出显示特定的 X 值

你可能想强调 X 轴上的某个特定值——比如阈值、决策点或里程碑。

plt.vlines(x=5, ymin=-1, ymax=1, color='red', linestyle='--')

突出特定X值

这非常适合标记模型的截止分数或某个关键事件的时间。


2. 🟠 注释时间序列中的事件

时间序列数据中常会出现一些重要事件(如峰值、故障或变化)需要特别标注。

event_times = [10, 20, 35]
plt.vlines(event_times, ymin=min(data), ymax=max(data), color='orange', linestyle='--')

时间序列事件注释

这有助于观察者立即识别关键时刻。


3. 🔵 手动绘制茎叶图

茎叶图通过从底部绘制竖线表示各个值。你可以用 vlines 重现这种效果。

plt.vlines(x, 0, y, colors='blue')
plt.plot(x, y, 'o')

手动绘制茎叶图

适合用来可视化离散信号或原始数值数据。


4. ⚪ 自定义垂直网格线

需要在特定的 x 值位置显示网格线?vlines 可以满足这个需求。

grid_positions = [2, 4, 6, 8]
plt.vlines(grid_positions, ymin=-1.2, ymax=1.2, linestyle='dotted')

自定义垂直网格线

当你的 x 轴不是均匀分布或自动刻度不理想时非常有用。


5. 🟣 用重复线条划分区域

将你的图表划分成不同的区域,以代表不同的时间段或区段。

for x in range(0, 100, 10):
    plt.vlines(x, ymin=-1, ymax=1, color='lightgray')

用重复线条划分区域

非常适合用来突出显示商务周期、实验阶段等。


6. 🟢 在直方图上绘制统计标记

可以添加中位数、四分位数或其他统计参考点的线条。

plt.vlines([q1, median, q3], ymin=0, ymax=30, linestyles='dashed')

直方图上的统计标记

这让直方图在报告或仪表盘中更加具有信息量。


🔚 总结

plt.vlines() 不仅仅是画一条线那么简单——它是一个多功能的工具,可以提升你图表的清晰度和讲故事的能力。无论你是在分析时间序列、强调阈值,还是在可视化分布,竖线都能为你带来更好的控制和灵活性。

试试在你的下一个图表中加入 vlines,让你的图表变得更加易读吧!