要创建一个具有三个轴的柱状图,你可以使用Matplotlib库。下面是一个示例代码,展示了如何创建一个简单的三轴柱状图:
import matplotlib.pyplot as plt import numpy as np # 生成示例数据 categories = ['A', 'B', 'C', 'D', 'E'] values1 = np.random.randint(1, 10, len(categories)) values2 = np.random.randint(1, 10, len(categories)) values3 = np.random.randint(1, 10, len(categories)) # 设置图形大小 fig = plt.figure(figsize=(8, 6)) # 创建三个子图 ax1 = fig.add_subplot(111, projection='3d') ax2 = ax1.twinx() ax3 = ax1.twinx() # 调整每个子图的位置 ax3.spines['right'].set_position(('outward', 60)) # 绘制柱状图 ax1.bar(categories, values1, width=0.2, color='r', alpha=0.5) ax2.bar(categories, values2, width=0.2, color='g', alpha=0.5) ax3.bar(categories, values3, width=0.2, color='b', alpha=0.5) # 设置轴标签 ax1.set_xlabel('Categories') ax1.set_ylabel('Values 1') ax2.set_ylabel('Values 2') ax3.set_ylabel('Values 3') # 显示图形 plt.show()
这个例子中,首先生成了一些示例数据。然后,创建了一个图形对象并设置了其大小。接下来,创建了三个子图,其中第一个子图是3D子图,而后两个子图位于同一位置,但轴标签位于不同的位置。然后,使用函数在每个子图上绘制了柱状图。最后,设置了轴标签,并显示了图形。
请注意,为了使后两个子图的轴标签位于不同的位置,使用了属性来调整其中一个子图的位置。具体来说,使用将右侧轴的位置设置为外移60个单位。