2012-04-06 8 views
20

Ich möchte Matplotlib verwenden, um das bestimmte Integral zwischen zwei Regionen zu veranschaulichen: x_0 und x_1.Wie schattiere ich die Region unter der Kurve in Matplotlib?

Wie kann ich Schatten einen Bereich unter einer Kurve in matplotlib von x = -1, bis x = 1 die folgenden Handlung gegeben

import numpy as np 
from matplotlib import pyplot as plt 
def f(t): 
    return t * t 

t = np.arange(-4,4,1/40.) 
plt.plot(t,f(t)) 

Die endgültige Antwort kam ich mit ist fill_between zu verwenden. Ich dachte, es wäre eine einfache Schattierung zwischen der Typ-Methode gewesen, aber das macht genau das, was ich will.

section = np.arange(-1, 1, 1/20.) 
plt.fill_between(section,f(section)) 
+0

hmmm. Dies scheint in Python3 (aber nicht Python2) auf meinem System zu segfizieren ... –

+1

@lukecampbell Bitte bedenken Sie, dass Sie Ihre Eingabe in eine Antwort verschieben müssen. Es ist nicht klebrig, es ist [empfohlen!] (Http://stackoverflow.com/help/self-answer) – MackM

Antwort

14

Auschecken fill. Hier ist eine example zum Füllen einer eingeschränkten Region.

+0

Der zweite Link ist kaputt. –

+0

@Jose_mr: Wahrscheinlich nicht. Das SciPy-Wiki scheint gerade im Stich zu sein. – gspr

+0

Sie haben Recht, es ist das ganze Wiki. –

10

Die endgültige Antwort, die ich gefunden habe, ist fill_between zu verwenden. Ich dachte, es wäre eine einfache Schattierung zwischen der Typ-Methode gewesen, aber das macht genau das, was ich will. section = np.arange(-1, 1, 1/20.) plt.fill_between(section,f(section))

Verwandte Themen