首页 > 解决方案 > 使用 pm4py 从事件日志中获取图表

问题描述

我有一个事件日志数据集,其中包含以下列:

   case:concept:name    concept:name    time:timestamp

我的目标是根据事件发生的日期获得事件的分布。

我使用了如上所示列的命名约定,因为我一直在使用名为 PM4Py 的包执行流程挖掘任务。为了获得所需的分发,我使用了 PM4Py 中的 csv 读取功能,并使用 pandas 包执行了一些任务。

这是我在将 csv 文件读入名为 'df' 的数据框对象后尝试的操作:

date = []
for i,row in df.iterrows():
  date.append(row['time:timestamp'].date())
df['Date'] = date #Creating a new column with only the date values

import matplotlib.pyplot as plt

plt.scatter(df['Date'].value_counts().index, df['Date'].value_counts()) 
plt.show()

这里的时间戳列是一个熊猫日期时间对象。输出似乎在某种程度上产生了所需的东西。但是,我想知道是否有更优雅的方法可以使用 PM4Py 或任何类似的包来做到这一点?

任何帮助,将不胜感激。谢谢。

标签: python

解决方案


您可以使用该pm4py.visualization.graphs模块,它似乎实现了您正在寻找的功能(http://pm4py.pads.rwth-aachen.de/documentation/obtaining-graphs-from-trace-log/)。

它可以生成关于案例持续时间、时间或任何数字属性的分布图。


推荐阅读