使用order=order[:10]
将图限制为最高的10个。使用ax.tick_params(axis='x', rotation=30)
旋转刻度线,使其更易于阅读。
这里有一些代码可以测试并显示其外观:
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
N = 300
cars = pd.DataFrame({'CarName': [f'name_{n}' for n in np.random.randint(1, 30, N)]})
order = cars['CarName'].value_counts().index
ax = sns.countplot(cars['CarName'], data=cars, palette='rainbow', order=order[:10])
ax.tick_params(axis='x', rotation=30)
plt.show()