我使用matplotlib在Julia中定义了以下动画。动画沿蓝线从左到右移动可见区域。我在蓝线上放了几个文字元素。我想在它们出现在视野中时使它们可见(由轴限制指定)。但是,正如您所看到的那样,文本元素在轴移动到实际轴之前在轴外的白色区域上可见。我该如何防止这种情况?
using PyPlot, PyCall
@pyimport matplotlib.animation as animation
# define initial plot
fig = figure(facecolor="white")
ax = gca()
ax[:set_ylim](-1,+1)
plot([-10,10],[0,0],"b-*",linewidth=2.0)
for i = -10:2:10
text(i,0.3,"$(i)",fontsize=30)
end
xdata = -10:0.1:10
# use animate function to change xlim
function animate(k)
k+=1
# change axis limits
lim = ax[:set_xlim](xdata[k]-1,xdata[k]+1)
return (lim,nothing)
end
numMaxFrames = length(xdata)
anim = animation.FuncAnimation(fig, animate, frames=numMaxFrames, interval=50,repeat=true)
答案 0 :(得分:1)
我在定义文本元素时通过设置选项 clip_on 解决了这个问题:
text(i,0.3,"$(i)",fontsize=30,clip_on=true)