需求: 拉取指定时间段的虚拟机监控数据,画使用率趋势图。
数据样式:[监控项名称,值,时间戳]
数据总量/条: 20万+ /天
拉取这里就不做叙述了,着重说下可视化部分遇到的问题。
问题1: 原先将时间戳转为文本格式,使用时间(时:分:秒)作为x轴,但数据量太大,x轴标签重叠严重。
- 解决办法
使用set_major_locator
对x轴标签进行间隔显示。
import matplotlib.pyplot as plt
from matplotlib import ticker
fig = plt.figure(figsize=(50, 12)) # 创建画布,figsize设置figure尺寸。(宽,高)
ax = fig.add_subplot()#添加子图
xtick_spacing = 60 #间隔大小,隔60个标签显示一次
ax.xaxis.set_major_locator(ticker.MultipleLocator(tick_spacing))
效果:
问题2: 一台虚机的