python填充颜色 相邻不能同色_使用连续的归一化颜色图填充功能下的区域 - python...

这篇博客展示了如何在Python中使用matplotlib库创建类似Mathematica的图形,确保相邻区域填充不同颜色。作者通过实例代码解释了如何利用自定义归一化颜色图和剪切蒙版实现这一效果。同时,文章还提及了在遇到sqlite3数据库锁定错误时的处理方法,讨论了Python时区处理中的不寻常现象,以及如何在Python中打印浮点数的全精度和监控文件夹新文件的出现。
摘要由CSDN通过智能技术生成

这是取自Mathematica的示例。

Plot[Abs[Exp[2 I x - x^2/2]], {x, -4, 4}, Filling -> Axis,

FillingStyle -> Automatic,

ColorFunction -> Function[{x, y}, Hue[Rescale[Arg[Exp[2 I x - x^2/2]], {-Pi, Pi}]]],

ColorFunctionScaling -> False]

产生下图

我想在python中进行等效绘制。 matplotlib是否有等效的colorfunction选项?

python参考方案

这不像您的Mathematica示例那么优雅,但是以下代码在matplotlib中复制了您的示例。基本思想是将函数绘制为不可见的多边形,显示归一化颜色图的图像(使用自定义范数函数将值包装在±pi/2之外),然后将函数多边形作为剪切蒙版应用到该图像。

码:

# Function (improve smoothness of plot by increasing samples from 500)

x = np.linspace(-4,4,500)

y = abs(np.e**(2j*x - x**2/2))

# Set up figure

fig, ax = plt.subplots()

ax.set_ylim(ymin=0, ymax=1)

# Plot line without fill

line, = ax.fill(x, y, facecolor='none')

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值