def METHOD_NAME(self):
    with open(self.export_name + '.json', 'r', encoding='utf-8') as f:
        records = json.load(f)
    records = dict(records)
    ranks = list(sorted(records.keys()))
    name_list = {}
    plots = {}
    plt.figure(dpi=self.dpi, figsize=[self.figure_width, self.figure_height])
    plt.style.use(self.theme)
    for rank in ranks:
        rank_records = records[rank]
        for rec in rank_records:
            s = rec['start']
            e = rec['end']
            name = rec['name']
            if name not in name_list:
                name_list[name] = len(name_list)
            bar = plt.barh(rank, width=e - s, height=self.bar_height, left=s, color=cmap[name_list[name]])
            if name not in plots:
                plots[name] = bar
    plt.legend(list(plots.values()), list(plots.keys()), loc="upper left", fontsize=self.legend_fontsize)
    plt.yticks(ticks=ranks, labels=[f'Device:{rank}' for rank in ranks], fontsize=self.device_fontsize)
    plt.grid(axis='x')
    plt.savefig("{}.{}".format(self.export_name, self.export_format))