相关疑难解决方法(0)

具有可变线宽的Matplotlib图

是否可以在matplotlib中绘制具有可变线宽的线?例如:

from pylab import *
x = [1, 2, 3, 4, 5]
y = [1, 2, 2, 0, 0]
width = [.5, 1, 1.5, .75, .75]

plot(x, y, linewidth=width)
Run Code Online (Sandbox Code Playgroud)

这不起作用,因为线宽需要标量.

注意:我知道*fill_between()*和*fill_betweenx()*.因为这些只能填充x或y方向,所以这些不适用于有斜线的情况.希望填充总是垂直于线.这就是寻求可变宽度线的原因.

python plot matplotlib

31
推荐指数
2
解决办法
4万
查看次数

基于仅更新绘图中颜色的动画

我有一个由大量线条组成的情节.在每一步中,线条的颜色应该在动画中得到更新,但在线条上进行for循环似乎非常昂贵.有没有更好的方法呢?

这是我的代码:

import numpy as np
lines=[]
from matplotlib import pyplot as plt
import matplotlib.animation as animation

#initial plot
fig=plt.figure()
ax=plt.subplot(1,1,1)
for i in range(10):
    lines.append([])
    for j in range(10):
        lines[i].append(ax.plot([i,j],color='0.8'))
lines=np.asarray(lines)


##Updating the colors 10 times 
im=[]
for steps in range(10):
    colors=np.random.random(size=(10,10))
    for i in range(10):
        for j in range(10):
            lines[i,j][0].set_color(str(colors[i,j])) 
    plt.draw()
#    im.append(ax)
    plt.pause(.1)
#ani = animation.ArtistAnimation(fig, im, interval=1000, blit=True,repeat_delay=1000)
plt.show()
Run Code Online (Sandbox Code Playgroud)

另外我无法与动画艺术家合作!我用画画.动画线有什么问题

现在将这些10增加到100会使程序非常缓慢:

import numpy as np
lines=[]
from matplotlib import pyplot as plt
import matplotlib.animation as animation …
Run Code Online (Sandbox Code Playgroud)

python plot numpy matplotlib

6
推荐指数
1
解决办法
646
查看次数

标签 统计

matplotlib ×2

plot ×2

python ×2

numpy ×1