【发布时间】:2019-07-02 17:36:59
【问题描述】:
我想制作一个折线图,其中基本上 (Dog,1)、(Cat,2)、(Bird,3) 等都是按线绘制和连接的。另外,我希望能够确定标签在 X 轴上的顺序。 Matplotlib 使用“狗”、“猫”和“鸟”标签的顺序自动绘制。尽管我尝试将订单重新排列为“狗”、“鸟”、“长颈鹿”、“猫”,但图表并没有改变(见图)。我应该怎么做才能相应地安排图表?
x = ['Dog','Cat','Bird','Dog','Cat','Bird','Dog','Cat','Cat','Cat']
y = [1,2,3,4,5,6,7,8,9,10]
x_ticks_labels = ['Dog','Bird','Giraffe','Cat']
fig, ax = plt.subplots(1,1)
ax.plot(x,y)
# Set number of ticks for x-axis
ax.set_xticks(range(len(x_ticks_labels)))
# Set ticks labels for x-axis
ax.set_xticklabels(x_ticks_labels)
【问题讨论】:
-
您的
x列表中没有“长颈鹿”。你的问题到底是什么?想要的图应该是什么样子的? -
@Bazingaa 我认为问题的关键在于 Giraffe 不在
x中(除了所需的自定义排序)。 -
@Bazingaa 为混乱道歉,我的目的是根据我确定的标签顺序而不是 matplotlib 的自动排序来显示图表。
-
@ImportanceOfBeingErnest 回答了这个问题。谢谢!!
标签: matplotlib