子图散点图例的解决方案
Posted
技术标签:
【中文标题】子图散点图例的解决方案【英文标题】:Solution for scatter legend of subplots 【发布时间】:2020-05-27 21:38:57 【问题描述】:我有一个我无法处理的问题。我尝试了几件事,但它不起作用。或者至少我愚蠢地得到解决方案idk。
T 使用 for 循环创建子图,并且每次都使用子数组中的数据创建它。对于每个散点,我创建不同的颜色(每个子图大约 13 个散点)。
现在我想为每个子图创建一个图例,以显示哪种颜色与哪个点相关。
fig, axs = plt.subplots(3, 3, figsize=(15, 15), facecolor='w', edgecolor='k')
fig.subplots_adjust(hspace = .35, wspace= .3)
C = np.array([[255, 0, 0], [0, 255, 0], [0, 0, 255], [0, 255, 255], [255, 255, 0], [0, 128, 0], [139, 0, 139], [255, 140, 0], [216, 112, 147], [238, 130, 238], [119, 136, 128], [0, 0, 0], [139, 69, 19]])
axs = axs.ravel()
for i in range(9):
SingleWeldLayer = np.where(WeldArray1[:,0] == PlotLayerStart + i)
Last = np.amax(SingleWeldLayer)
First = np.amin(SingleWeldLayer)
DynArray = WeldArray1[First:Last+1]
# print(DynArray)
axs[i].scatter(DynArray[:,3], DynArray[:,2], c = C/255)
axs[i].set_title('Layer: '+ str(PlotLayerStart + i))
axs[i].set_xlabel('MF_LargeCoil_TargetPosition', fontsize=8)
axs[i].set_ylabel('HF_SmallCoil_TargetPosition', fontsize=8)
plt.show()
有人可以帮我为每个子图创建一个图例吗?
Current scatter plots
【问题讨论】:
***.com/questions/27016904/… 这能回答你的问题吗? Matplotlib legends in subplot 【参考方案1】:在你的循环中,添加axs[i].legend(loc="upper right")
【讨论】:
我已经试过了。但它每次都会回复“找不到带有标签的句柄放在图例中。”以上是关于子图散点图例的解决方案的主要内容,如果未能解决你的问题,请参考以下文章