甘特图-python

import matplotlib.pyplot as plt
def gatt(CHS,Processing_time,Setup_time,Transpotation_time,M_num,O_Max_len,J_num):
    D=Decode_Matrix(CHS, Processing_time, Setup_time, Transpotation_time, M_num, O_Max_len, J_num)
    # print(CHromo)
    End_time=D[1]
    Start_time=D[0]
    S_start=D[2]
    S_end=D[3]
    T_start=D[4]
    T_end=D[5]
    T0 = J_num * O_Max_len
    N = M_num
    Start = []
    End = []
    M = ['red', 'blue', 'yellow', 'orange', 'green', 'palegoldenrod', 'purple', 'pink','Thistle','Magenta','SlateBlue','RoyalBlue','Cyan','Aqua','floralwhite','ghostwhite','goldenrod','mediumslateblue','navajowhite',
             'navy','sandybrown','moccasin']
    S_color='white'
    T_color='grey'
    s=('/', '+', 'x', '\\', '||', 'o', '///','//' '.','//','#','||')
    for i in range(N):
        for j in range(T0):
            if End_time[i][j] != 0 and End_time[i][j] - Start_time[i][j] != 0:
                plt.barh(i*3, width=End_time[i][j] - Start_time[i][j],height=0.8, left=Start_time[i][j],
                              color=M[int(j/O_Max_len)],edgecolor='black')
                plt.text(x=Start_time[i][j] + 0.1, y=i*3, s=(int(j/O_Max_len)+1, j%O_Max_len+1),fontsize=8)
            if S_end[i][j] != 0 and S_end[i][j] - S_start[i][j] != 0:
                plt.barh(i * 3+1, width=S_end[i][j] - S_start[i][j], height=0.8, left=S_start[i][j],
                         color=S_color, edgecolor='black')
                plt.text(x=S_start[i][j] + 0.1, y=i * 3+1, s=(int(j / O_Max_len) + 1, j % O_Max_len + 1),
                         fontsize=8)
            if T_end[i][j] != 0 and T_end[i][j] - T_start[i][j] != 0:
                plt.barh(i * 3+2, width=T_end[i][j] - T_start[i][j], height=0.8, left=T_start[i][j],
                         color=T_color, edgecolor='black')
                plt.text(x=T_start[i][j] + 0.1, y=i * 3+2, s=(int(j / O_Max_len) + 1, j % O_Max_len + 1),
                         fontsize=8)
                Start.append(Start_time[i][j])
                End.append(End_time[i][j])


你可能感兴趣的:(经验技巧,科研技巧,甘特图,python,开发语言)