Как отобразить имя индекса dataframe в таблице matplotlib? - PullRequest
0 голосов
/ 11 января 2019

У меня есть фрейм данных, который я хочу показать в виде таблицы в PDF-файле с помощью matplotlib.

Мой код выглядит следующим образом (я обхожу то, что делаю раньше, так как данные, по-моему, не относятся к моему вопросу):

table = ax_table.table(cellText=str_df.values, rowLabels=str_df.index, cellLoc='center',
                       colColours=['gainsboro'] * len(table_col), colLabels=table_col, loc='center',
                       colWidths= [0.12]*(len(table_col)), cellColours = img.to_rgba(df_for_table.values))

Моё имя индекса данных (str_df) - «Площадь», и я хотел бы показать его через таблицу matplotlib вместо пустого пространства (обведено красным):

enter image description here

Кто-нибудь знает, возможно ли это?

Спасибо.

1 Ответ

0 голосов
/ 11 января 2019

Вы можете добавить ячейку в соответствующем месте и использовать dataframe.index.name в качестве текста.

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

df = pd.DataFrame(np.random.randint(1,50, size=(8,4)), columns=list("ABCD"))
df.index.name = "Name"


fig, ax = plt.subplots()
table = ax.table(cellText=df.values, rowLabels=df.index, cellLoc='center',
                 colColours=['gainsboro'] * len(df), colLabels=df.columns, loc='center',
                 colWidths= [0.12]*(len(df.columns)))
w, h = table[0,1].get_width(), table[0,1].get_height()
table.add_cell(0, -1, w,h, text=df.index.name)
plt.show()

enter image description here

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