![](/img/trans.png)
[英]How to plot frequency band using `matplotlib.pyplot.specgram`
[英]Fat band using matplotlib in python
我想在 python 中使用 matplotlib 繪制一條粗細不同的線。
更清楚地說,我有以下變量
import matplotlib.pyplot as P
import numpy as N
x_value = N.arange(0,10,1)
y_value = N.random.rand(10)
bandwidth = N.random.rand(10)*10
P.plot(x_value,y_value,bandwidth)
我想用 x_value 和 y_value 繪制一條線,厚度隨 x_value 位置變化並由帶寬向量給出。
我看到的一個可能的解決方案是繪制上下線(即我取 y_value[index] +-bandwidth[index]/2 並繪制這兩條線。
然后我可以嘗試填充兩行之間的空間(如何?)
如果你有什么建議?
謝謝,
塞繆爾。
您可以使用fill_between
來做到這fill_between
。
例如,要擁有一半以上的bandwidth
和一半以下的bandwidth
(並且還使用plot
繪制原始線):
import matplotlib.pyplot as P
import numpy as N
x_value = N.arange(0,10,1)
y_value = N.random.rand(10)
bandwidth = N.random.rand(10)*10
print bandwidth
P.fill_between(x_value, y_value+bandwidth/2, y_value-bandwidth/2, alpha=.5)
P.plot(x_value,y_value)
P.show()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.