如何将colour.plotting的两个图表绘制在同一画布?show参数尝试无效
解决colour.plotting多图同画布问题
直接用show=False和show=True无法让两个图表叠加在同一画布,原因是colour的绘图函数默认会创建新的独立画布,除非手动指定共享的坐标轴对象。
解决方法是借助matplotlib的轴对象,让两个绘图函数复用同一个轴:
import colour import matplotlib.pyplot as plt # 创建画布与坐标轴对象 fig, ax = plt.subplots() # 绘制普朗克轨迹,指定复用的坐标轴,关闭自动显示 colour.plotting.plot_planckian_locus_in_chromaticity_diagram_CIE1931( ["A", "B", "C"], axes=ax, show=False ) # 绘制RGB色域,复用同一个坐标轴,最后显示图表 colour.plotting.plot_RGB_colourspaces_in_chromaticity_diagram_CIE1931( ["ITU-R BT.709", "ITU-R BT.2020"], axes=ax, show=True )
核心是通过axes参数传递同一个坐标轴对象,强制两个绘图操作在同一块画布上进行,这样就能看到普朗克轨迹和RGB色域叠加的效果了。
内容的提问来源于stack exchange,提问作者FLX
相关产品推荐
相关产品推荐

