Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
681 views
in Technique[技术] by (71.8m points)

remove part of a plot in matplotlib

I'm trying to find a way to hide part of a line in a matplotlib plot. Say I have a line with x values from 0 to 100 and I want to hide a portion of the line form x = 20 to x = 30. Is there any efficient way to do this? Thanks!

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

You could mask part of the array, then matplotlib doesn't plot it:

import numpy as np
import matplotlib.pylab as pl

x = np.arange(100)
y = np.cos(x/10.)

pl.figure()
pl.subplot(121)
pl.plot(x, y)

# Mask part of array
y2 = np.ma.masked_where(((x>20)&(x<30)), y) 

pl.subplot(122)
pl.plot(x, y2)

enter image description here


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...