把所有的物体(艺术家)都画在一个figu上

2024-06-11 05:40:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我希望建立一个方法,可以转换一个正常的图形(暗线,白色/透明背景)到一个伪反转图形(浅线,黑色/透明背景)。我可以只是后处理反转图像,但直接反转的颜色看起来很糟糕,所以我想(试着)创建一个从一组颜色到另一组颜色的映射,然后将此应用于所有添加到(所有轴上)图形的艺术家。在

是否有方法访问已添加到图形中的所有对象(例如文本、散点图、线条、记号标签等)?


编辑:我的动机是自动创建白色背景和黑色背景的图形版本。对于出版物(例如,出版物,总是需要白色背景数字(例如),而对于演示(即演讲幻灯片),黑色背景数字可能更好。虽然设置一个标志并根据其改变每种颜色并不会有太大的麻烦

if dark:
    col_line = 'cyan'
    col_bg = 'black'
else:
    col_line = 'red'
    col_bg = 'white'

# ... plot ...

做这样的事情会更酷更方便(尽管开销很大)

^{pr2}$

Tags: 方法图像图形颜色line数字col后处理
2条回答

递归调用.get_children(),当返回的列表为空时停止。在

您可以使用不同的样式或根据需要更改现有样式,而不是自己更改所有可能的艺术家的所有属性。在

例如,您可以从"dark_background"样式开始,然后使用^{}调整一些进一步的参数。在

import numpy as np
import matplotlib.pyplot as plt
plt.style.use("dark_background")

style = {"lines.linewidth" : 2,
         "axes.facecolor" : "#410448"}
plt.rcParams.update(style)

plt.plot(np.sin(np.linspace(0, 2 * np.pi)))

plt.show()

enter image description here

相关问题 更多 >