我正在尝试从import seaborn as sns
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from random import seed, choice
seed(0)
df = pd.DataFrame([choice(range(250)) for _ in range(100)], columns=['Values'])
bins = np.arange(0, 260, 10)
df['Values'].hist(bins=bins)
plt.tight_layout()
plt.show()
通过DataFrame.hist
方法启用DataFrame生成直方图,但我不断在直方图本身的任何一侧添加额外空间,如红色箭头所示在下图中:
如何删除这些空格?重现此图表的代码如下:
awk '
!first[$8] {first[$8] = $0}
{last[$8] = $0}
END {for (id in first) {print first[id]; print last[id]}}
' file
答案 0 :(得分:3)
plt.tight_layout()
只对你的情节的“外边距”产生影响(刻度线,斧头标签等)。
默认情况下,matplotlib的hist在hist bar-plot周围留下一个内边距。要禁用,您可以执行以下操作:
ax = df['Values'].hist(bins=bins)
ax.margins(x=0)
plt.show()