python plot坐标轴名称 如何在Pandas barplot中旋转x轴刻度标签




python plot坐标轴名称 (3)

使用以下代码:

import matplotlib
matplotlib.style.use('ggplot')
import matplotlib.pyplot as plt
import pandas as pd

df = pd.DataFrame({ 'celltype':["foo","bar","qux","woz"], 's1':[5,9,1,7], 's2':[12,90,13,87]})
df = df[["celltype","s1","s2"]]
df.set_index(["celltype"],inplace=True)
df.plot(kind='bar',alpha=0.75)
plt.xlabel("")

我做了这个情节:

如何将x轴刻度标签旋转到0度?

我尝试添加这个但是没有用:

plt.set_xticklabels(df.index,rotation=90)

Answer #1

问题很清楚,但标题不尽如人意。 我的答案是那些想要改变 标签的人 ,而不是 刻度标签, 这是接受的答案。 (标题现已更正)。

for ax in plt.gcf().axes:
    plt.sca(ax)
    plt.xlabel(ax.get_xlabel(), rotation=90)

Answer #2

传递param rot=0 来旋转xticks:

import matplotlib
matplotlib.style.use('ggplot')
import matplotlib.pyplot as plt
import pandas as pd

df = pd.DataFrame({ 'celltype':["foo","bar","qux","woz"], 's1':[5,9,1,7], 's2':[12,90,13,87]})
df = df[["celltype","s1","s2"]]
df.set_index(["celltype"],inplace=True)
df.plot(kind='bar',alpha=0.75, rot=0)
plt.xlabel("")
plt.show()

产量图:


Answer #3

你可以使用set_xticklabels()

ax.set_xticklabels(df['Names'], rotation=90)




matplotlib