【发布时间】:2012-11-30 21:07:29
【问题描述】:
我有一个节点集群,每个节点产生大约 200 个关于 CPU/网络/磁盘等性能的统计信息。到目前为止,我已经遍历了各个节点的日志文件,并将它们解析为每个节点的数据帧对象并放入进入由节点 id 键入的字典:
(这里第一列是DataFrame的索引标签)
{ 'node00':
<DaFrame-display-begin>
core 0 core 1 core 2 core 3 group 0
Avg IPC (w/ idle) 0.09 0.12 0.06 0.06 0.08
Avg CPI (w/ idle) 11.17 8.03 15.62 16.97 12.95
Avg IPC (w/o idle) 0.48 0.78 0.64 0.63 0.63
Avg CPI (w/o idle) 2.10 1.28 1.56 1.59 1.63
User IPC (w/o idle) 0.70 1.02 0.85 0.84 0.85
........................................
,
'node01':
<DataFrame-display-begin>
Avg IPC (w/ idle) 0.05 0.12 0.06 0.06 0.08
Avg CPI (w/ idle) 9.17 8.03 15.62 16.97 12.95
Avg IPC (w/o idle) 0.48 0.78 0.64 0.63 0.63
Avg CPI (w/o idle) 2.10 1.28 1.56 1.59 1.63
User IPC (w/o idle) 0.70 1.02 0.85 0.84 0.85
}
我计划编写一个通用函数,它将统计信息的名称作为参数,然后在集群中的所有节点上绘制特定统计信息的条形图。不同芯的棒可以堆叠或并排。但是 x 轴将点需要作为节点以便于比较。
有什么建议吗?我是 Pandas/matplotlib 的新手,所以任何提示都会很棒。
【问题讨论】:
-
从各种示例中,我可以设法创建条形图。将 stats 名称更改为列而不是索引,以后只允许选择 statitis 与参数匹配的那些行。还将节点值添加为列。将所有节点的 DataFrame 附加到一个更大的列表中。最后做数据透视表并将数据透视表放入数据框并以条形模式绘制数据框创建了必要的图表。
标签: matplotlib pandas