第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > 用python画波浪线的句子_matplotlib中的锯齿线或波浪线

用python画波浪线的句子_matplotlib中的锯齿线或波浪线

时间:2020-11-19 14:10:40

相关推荐

用python画波浪线的句子_matplotlib中的锯齿线或波浪线

是的,但是会有一点影响。最简单的方法是在matplotlib中使用xkcd模式。在import numpy as np

import matplotlib.pyplot as plt

plt.xkcd()

plt.figure()

plt.plot(np.linspace(0.7,1.42,100),[0.7]*100)

plt.show()

这给了你以下信息:

如果你看一下code used to achieve this,你会发现xkcd函数对rcParams字典做了一些更改。最明显的是条目rcParams['path.sketch'] = (scale, length, randomness),它是一个能够模拟手绘外观的path effect。xkcd样式使用的默认参数为:

^{pr2}$

如果从matplotlib包导入rcParams字典,则可以更改该字典中的条目。在下面的示例中,我将randomness值从2增加到100:import numpy as np

import matplotlib.pyplot as plt

from matplotlib import rcParams

rcParams['path.sketch'] = (1, 100, 100)

plt.plot(np.linspace(0.7,1.42,100),[0.7]*100)

plt.show()

这将导致以下情节:

正如你所看到的,更多的抖动和字体仍然是'正常'。然而,这种风格也被用来画轴,到目前为止我还没有找到一种方法。

两种解决方法可以是:无需绘制边框/脊椎。在

独立绘制脊椎和线条(很难实现自动化,也很烦人)。在

仔细阅读matplotlib和路径样式的文档,找出是否有一种方法只为绘制的线的子集设置路径样式。在

方案1可以这样实现:import numpy as np

import matplotlib.pyplot as plt

from matplotlib import rcParams

rcParams['path.sketch'] = (10, 10, 100)

fig = plt.plot(np.linspace(0.7,1.42,100),[0.7]*100)

for pos, spine in fig[0].axes.spines.items():

spine.set_visible(False)

plt.show()

在我看来,这看起来还不错。无论如何,地块周围的边界被高估了。在

编辑:减少混乱

若要获得均匀的波浪线,请将“随机性”参数设置为1,然后为“振幅”和“长度”选择较小的值:import numpy as np

import matplotlib.pyplot as plt

from matplotlib import rcParams

rcParams['path.sketch'] = (3, 10, 1)

fig = plt.plot(np.linspace(0.7,1.42,100),[0.7]*100)

for pos, spine in fig[0].axes.spines.items():

spine.set_visible(False)

plt.show()

额外图片:更多混乱rcParams['path.sketch'] = (100, 1, 100)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。