簡體   English   中英

在python中使用matplotlib的胖帶

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM