在一个图表中添加2个柱形图和1个线形图,可以使用Python中的matplotlib库来完成。具体实现方法如下所示:
import matplotlib.pyplot as plt
import numpy as np
#生成数据
x = np.arange(5)
y1 = [2, 5, 6, 8, 10]
y2 = [1, 4, 7, 9, 11]
y3 = [3, 6, 9, 12, 15]
#创建子图
fig, ax = plt.subplots()
#添加柱形图
ax.bar(x-0.2, y1, width=0.4, color='red', align='center', label='Column1')
ax.bar(x+0.2, y2, width=0.4, color='blue', align='center', label='Column2')
#添加线形图
ax.plot(x, y3, color='green', linewidth=2.0, label='Line')
#设置图例
ax.legend(loc='best')
#设置标题和横纵坐标标签
ax.set_title('Title')
ax.set_xlabel('X')
ax.set_ylabel('Y')
#显示图表
plt.show()
在这个示例中,先使用numpy生成了三组数据,其中y1和y2用于绘制两个柱形图,y3用于绘制一条线形图。然后使用matplotlib中的subplots()方法创建一个包含1个子图的图表,接着分别使用bar()和plot()方法来添加柱形图和线形图。在添加柱形图时,需要通过调节柱形的宽度和位置来让它们不重叠。最后使用legend()方法添加图例,使用set_title()、set_xlabel()和set_ylabel()方法设置标题和横纵坐标标签,并使用show()方法显示图表。