数据框打印仅显示 2 行而不是 20 行

我想打印我的数据框。不幸的是,图片只显示了数据帧的 2 行,而不是 20 行,下表如下,并且还有一个巨大的空白区域。有人可以帮助我获取数据帧的所有 20 行吗?

这是来源How to save a pandas DataFrame table as a png

import pandas as pd

import matplotlib.pyplot as plt

from pandas.plotting import table  # EDIT: see deprecation warnings below

from pathlib import Path



PATH_DATA = "../data"

PATH_RETAILROCKET = Path(PATH_DATA,"retailrocket/retailrocket/events.csv")

# RetailRocket

print(PATH_RETAILROCKET)

df = pd.read_csv(Path(PATH_RETAILROCKET))

df = df.head(20)



ax = plt.subplot(111, frame_on=False) # no visible frame

ax.xaxis.set_visible(False)  # hide the x axis

ax.yaxis.set_visible(False)  # hide the y axis


table(ax, df)  # where df is your data frame


plt.savefig('mytable.png')

https://img1.sycdn.imooc.com/65a62bdc00018a6606490476.jpg

慕哥6287543
浏览 71回答 1
1回答

桃花长相依

默认情况下,表格放置在轴占据的区域下方。在这里,大部分图形区域都被(不可见的)轴占据,为桌子留下的空间很小。根据您所需的输出,有多种方法可以解决该问题。在这里,我使用bbox=的参数Table来覆盖位置,并使表格占据整个图形。df = pd.DataFrame(np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]),                  columns=['a', 'b', 'c'])fig = plt.figure()ax = plt.subplot(111)ax.axis('off')table(ax, df, bbox=[0,0,1,1])
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python