如何使用python画一个横坐标能对应4个不同颜色柱子的柱状图?
时间: 2024-11-09 19:24:13 浏览: 6
Python画图实现同一结点多个柱状图的示例
在Python中,你可以使用matplotlib库来创建这样的柱状图。下面是一个简单的例子,展示如何为四个不同的横坐标值分配四种颜色的柱子:
```python
import matplotlib.pyplot as plt
# 数据
x = ['A', 'B', 'C', 'D']
y1 = [10, 25, 15, 30]
y2 = [5, 10, 8, 12]
y3 = [20, 22, 18, 26]
y4 = [15, 17, 16, 24]
# 定义颜色
colors = ['blue', 'green', 'red', 'purple']
# 创建图形
fig, ax = plt.subplots()
# 绘制每根柱子
for i in range(len(x)):
ax.bar(x[i], y1[i], color=colors[i])
ax.bar(x[i], y2[i], bottom=y1[i], color=colors[i], alpha=0.5) # 添加填充效果
ax.bar(x[i], y3[i], bottom=[y1[i]+y2[i]], color=colors[i], alpha=0.5)
ax.bar(x[i], y4[i], bottom=[y1[i]+y2[i]+y3[i]], color=colors[i], alpha=0.5)
# 设置标题和轴标签
ax.set_title('四色柱状图')
ax.set_xlabel('类别')
ax.set_ylabel('数值')
# 显示图形
plt.show()
```
在这个示例中,我们首先导入了必要的模块,然后定义了数据、颜色列表。接着,我们创建了一个图表,并通过循环绘制了四组柱子,分别对应四个颜色。`alpha`属性设置了部分填充效果。
阅读全文