gpt4 book ai didi

python - Matplotlib - 为黑色背景演示幻灯片创建绘图

转载 作者:太空狗 更新时间:2023-10-30 00:53:18 26 4
gpt4 key购买 nike

我成功地使用 Python 和 Matplotlib 创建透明的 PNG 图形,当我将绘图添加到具有白色背景的 Powerpoint 幻灯片时,这些图形看起来不错。下面是一个例子:

enter image description here

但是,当我使用具有黑色背景的演示文稿幻灯片时,图形看起来不太好。文本字体和线条都是黑色的,它们与背景融为一体。

enter image description here

是否有一种快速简便的方法来生成这些图形,以便它们在黑色幻灯片上看起来不错?例如,我想快速将所有的线条和文本变成白色。我知道我可以单独设置标题、轴标签、轴值等的颜色,但是是否有一个“主主题”可以快速进行此类更改?

我的代码大致如下:

_ = plt.bar(hours, series_two, label='One')
_ = plt.bar(hours, series_one, label='Two')
_ = plt.grid()
_ = plt.xticks(range(0,24))
_ = plt.yticks(np.arange(0, 1.01, 0.05))
_ = plt.ylim(0, 1.0)
_ = plt.xlabel('Hour of day')
_ = plt.ylabel('Value')
_ = plt.tight_layout()
_ = plt.title('Experimental results')
_ = plt.legend()
_ = plt.show()

编辑:我从相关问题中使用了 plt.style.use("dark_background"),但结果看起来很糟糕。我只想更改线条和文本,而不是条形的颜色。

enter image description here

最佳答案

如果预先设计dark_background style与预期不符,可以手动设置相应的 rcParams。以下可能会产生所需的情节。

import matplotlib.pyplot as plt

plt.rcParams.update({
"lines.color": "white",
"patch.edgecolor": "white",
"text.color": "black",
"axes.facecolor": "white",
"axes.edgecolor": "lightgray",
"axes.labelcolor": "white",
"xtick.color": "white",
"ytick.color": "white",
"grid.color": "lightgray",
"figure.facecolor": "black",
"figure.edgecolor": "black",
"savefig.facecolor": "black",
"savefig.edgecolor": "black"})

x = range(1,25)
y = range(60,108)[::-2]
y2 = range(16,40)[::-1]

plt.bar(x, y, label='One')
plt.bar(x, y2, label='Two')
plt.grid()
plt.xticks(x)

plt.xlabel('Hour of day')
plt.ylabel('Value')
plt.title('Experimental results', color="w")
plt.legend()
plt.tight_layout()
plt.show()

enter image description here

请注意,您需要手动设置标题颜色,因为默认文本颜色设置为黑色,因此图例文本为黑色。否则,当然可以反其道而行之,手动设置图例文本颜色。

关于python - Matplotlib - 为黑色背景演示幻灯片创建绘图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48391568/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com