matplotlib 以更高分辨率保存plot_RGB_chromaticities_in_chromaticity_diagraph_CIE1931的结果

k5ifujac  于 2023-08-06  发布在  其他
关注(0)|答案(1)|浏览(74)

我在python中使用colour库。
我调用plot_RGB_chromaticities_in_chromaticity_diagram_CIE1931如下:

fig, axes = plot_RGB_chromaticities_in_chromaticity_diagram_CIE1931(RGB=RGB, scatter_kwargs={'c': colors, 'marker': '.', 'label': "e"}, filename='e.jpeg', dpi=8000, show_pointer_gamut=False)

字符串
无论我传递什么filename,我都无法获得更高的分辨率。dpi似乎没有做任何事情。fig.dpi,一旦返回,无论我传递什么,都显示200.0
有办法解决吗?如何以更高的分辨率保存?
我是否可以在事后编辑dpi并保存它?

q5iwbnjs

q5iwbnjs1#

Colour将遵守MatplotlibrcParams中设置的设置,因此您可以执行以下操作:

import colour
import numpy as np
import matplotlib.pyplot as plt

with plt.rc_context(
    {
        "figure.figsize": (20.48, 20.48),
        "figure.dpi": 100,
        "savefig.dpi": 100,
    }
):
    figure, axes = colour.plotting.plot_RGB_chromaticities_in_chromaticity_diagram_CIE1931(
        RGB=np.random.random((32, 32, 3)),
        filename="/Users/kelsolaar/Downloads/high-dpi.jpeg",
        show_pointer_gamut=False,
    )

字符串
另一种方法是以所需的分辨率创建图形,并将其轴传递给绘图定义:

figure = plt.figure(figsize=(20.48, 20.48))

figure, axes = colour.plotting.plot_RGB_chromaticities_in_chromaticity_diagram_CIE1931(
    axes=figure.gca(),
    RGB=np.random.random((32, 32, 3)),
    filename="/Users/kelsolaar/Downloads/high-dpi-alternative.jpeg",
    show_pointer_gamut=False,
)

相关问题