欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 新车 > matplotlib赛博朋克绘图风格介绍(mplcyberpunk)

matplotlib赛博朋克绘图风格介绍(mplcyberpunk)

2025/3/10 5:19:40 来源:https://blog.csdn.net/weixin_43817712/article/details/139928816  浏览:    关键词:matplotlib赛博朋克绘图风格介绍(mplcyberpunk)

matplotlib绘图风格

mplcyberpunk

mplcyberpunk是一个matplotlib绘图风格的扩展包,利用这个python包,可以轻易的创建出精美的赛博朋克风格图表,方法介绍:

import matplotlib.pyplot as plt
import mplcyberpunkplt.style.use("cyberpunk")add_glow_effects #使图形中的下方开启发光效果
make_lines_glow() #使线条具有发光效果
add_underglow() #在图形下方添加底部发光效果
add_gradient_fill() #为图形添加渐变填充效果
make_scatter_glow() #使图形中的散点具有发光效果

安装

pip install mplcyberpunk

在这里插入图片描述

用法

在导入包之后,可以通过 plt.style.use 使用 cyberpunk 样式表(暗背景等)。发光效果和“下光”效果可以通过调用 add_glow_effects 添加:

import matplotlib.pyplot as plt
import mplcyberpunkplt.style.use("cyberpunk")plt.plot([1, 3, 9, 5, 2, 1, 1], marker='o')
plt.plot([4, 5, 5, 7, 9, 8, 6], marker='o')mplcyberpunk.add_glow_effects()plt.show()

效果图:
在这里插入图片描述

这种效果目前仅对线条实现。

单独添加效果

除了 add_glow_effects,你还可以分别添加线条发光和下光效果:

mplcyberpunk.make_lines_glow()
mplcyberpunk.add_underglow()

你还可以明确地将效果添加到特定的坐标轴对象:

fig, ax = plt.subplots()
# ...
mplcyberpunk.make_lines_glow(ax)

要仅为特定线条激活发光效果,可以将 Line2D 对象或 Line2D 对象列表传递给 make_lines_glow
在这里插入图片描述

渐变发光

可以通过

mplcyberpunk.add_glow_effects(gradient_fill=True)

添加渐变下光效果:

或者独立于线条发光效果,通过

mplcyberpunk.add_gradient_fill(alpha_gradientglow=0.5)

添加渐变下光效果:

add_gradient_fill 接受一个 gradient_start 参数以不同的渐变起始值:
在这里插入图片描述

不同的发光配置

在这里插入图片描述

散点图

可以通过 mplcyberpunk.make_scatter_glow() 为散点图添加发光效果:
在这里插入图片描述

颜色映射

默认的颜色映射是 cool
在这里插入图片描述

其他颜色映射:
在这里插入图片描述

柱状图

import matplotlib.pyplot as plt
import mplcyberpunkplt.style.use('cyberpunk')categories = ['A', 'B', 'C', 'D', 'E']
values = [25, 67, 19, 45, 10]
colors = ["C0", "C1", "C2", "C3", "C4"]bars = plt.bar(categories, values, color=colors, zorder=2)mplcyberpunk.add_bar_gradient(bars=bars)plt.show()

在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词