таблица осей не отображается при построении гистограммы - PullRequest
0 голосов
/ 03 июля 2019

Я пытаюсь прочитать данные из некоторых файлов Excel и после очистки.Я пытаюсь построить гистограмму и таблицу, которая содержит различные значения строк и столбцов.Я могу видеть гистограмму, но не таблицу.Я использую Matplotlib для этого.

Я попытался изменить положение стола, и я также использовал zorder.Я попытался отключить сюжет истории, но все еще не смог увидеть таблицу.ниже приведен код, который я пробовал:

    reports_data= [
        (self.data_left_camera, 'left_points_results.xlsx'),
        (self.data_right_camera,
         'right_points_results.xlsx'),
        (self.data_front_camera,
         'front_points_results.xlsx'),
        (self.data_rear_camera,  'rear_points_results.xlsx')]
    rep_path = os.path.join(self.path, self.test_case)
    rec_list = []
    dirnames = os.listdir(rep_path)
    for dir in dirnames:
        if dir.__contains__("mi5"):
            rec_list.append(os.path.join(rep_path,dir))
    for rec in rec_list:
        rec_report = os.path.join(rep_path, rec)
        if os.path.isdir(rec_report):
            for output, report in reports_data:
                xl = pd.ExcelFile(os.path.join(rec_report, report), encoding = 'utf8')
                df = xl.parse("Sheet1")

                sec_ranges = df['sl'].dropna().tolist()
                range_val = []
                for det_range in sec_ranges:
                    ranges=ast.literal_eval(det_range)
                    for rang in ranges:
                        range_val.append(round(rang[1],1))
                range_df = pd.DataFrame(range_val,columns=["range"])
                range_df['frequency'] = range_df.groupby('range')['range'].transform('count')
                range_df = range_df.drop_duplicates()
                fig,ax = plt.subplots(figsize =(20,8))
                val =plt.hist(range_df["range"],bins=self.range_values,align='mid',edgecolor='black')

                plt.xlabel("Section Range")
                plt.ylabel("Number of Frames")
                plt.xlim([self.range_values[0],self.range_values[-1]])
                plt.xticks(self.range_values)
                ax.set_title("Number of frames vs Ranges")
                c = list(val[0])
                d = list(val[1][:-1])
                c_t = [c,d]
                ax.table(cellText=c_t, rowLabels=["frames", "range"],
                        loc='best', cellLoc='center',
                        bbox=[0.8, -0.25, 0.9, 0.1],zorder = 1)
                plt.axis("auto")
                plt.tight_layout()
                plt.show()

Я прилагаю выходной график, который я получаю.Здесь я получаю только гистограмму, но не таблицу.

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...