如何创建视觉分析器?

问题描述:

我想在Python上看到关于程序运行时间的统计信息。不幸的是,这个程序写在FortranC++,我不能使用任何语言特定的可视化工具。从程序的输出中,我创建了一个包括不同函数和子例程的开始时间和结束时间的类。例如:如何创建视觉分析器?

class MyProgramRuntime: 
    def __init__(self): 
     self.foo1CallTime 
     self.foo1EndTime 
     self.foo2CallTime 
     self.foo2EndTime 

我想获得一个类似的情节就像下面的链接上的画面:Picture

我不知道这是否是最好的解决办法,但它的作品真的很好,我。我已经使用matplotlib.patches lib绘制长矩形作为实际的函数/子例程以秒为单位运行。类中的变量是浮点变量,我通过从实际的日期时间中提取程序以datetime.timedelta.total_seconds()开始的日期时间来获取它们。绘图如下所示:

import matplotlib.pyplot as plt 
    import matplotlib.patches as patches 

    def plotRunningTimes(mpr): #mpr is an instance of the MyProgramRuntime class 
     fig = plt.figure() 
     ax = plt.subplot(111) 
     ax.add_patch(patches.Rectangle((mpr.foo1CallTime, 0.1), 
              mpr.foo1EndTime-mpr.foo1Calltime, 
              0.1))