我的问题是其中一个酒吧不是居中的,因为酒吧可能是旁边的技术(它是没有)是某种程度上干扰或可能不是我不知道。
我的密码是:
import matplotlib.pyplot as plt
# Define the data
categories = ['bear', 'neutral', 'man']
wins = [2, 3, 7]
attacks = [3, None, 5]
# Create a bar chart
fig, ax = plt.subplots()
ax.bar(categories, wins, 0.35, label='Win')
ax.bar([i + 0.35 for i in range(len(attacks)) if attacks[i] is not None],
list(filter(None, attacks)), 0.35, label='Attack')
# Add labels and legend
ax.set_xticks([i + 0.35/2 for i in range(len(categories))])
ax.legend()
# Display the chart
plt.show()
问题是这张图表
这是我想要的(中间的酒吧是居中的图片):
1条答案
按热度按时间9udxz4iz1#
下面的方法不是很通用,但对你的情况很有效。当没有第二个柱时,第一个柱的位置会被修改。刻度标签与刻度位置同时设置。
另一个想法是使用numpy对位置进行数组操作,当数据转换为numpy数组时,float类型将
None
表示为NaN
。