Rechthoeken tekenen in matplotlib (met voorbeelden)
Om een rechthoek in Matplotlib te tekenen, kunt u de functie matplotlib.patches.Rectangle gebruiken, die de volgende syntaxis gebruikt:
matplotlib.patches.Rectangle(xy, breedte, hoogte, hoek=0,0)
Goud:
- xy: De coördinaten (x, y) van het ankerpunt van de rechthoek
- breedte: breedte van de rechthoek
- hoogte: hoogte van de rechthoek
- hoek: Rotatie in graden tegen de klok in rond xy (standaard is 0)
Deze tutorial biedt verschillende voorbeelden van praktisch gebruik van deze functie.
Voorbeeld 1: teken een rechthoek op een pad
De volgende code laat zien hoe u een rechthoek tekent op een Matplotlib-plot met een breedte van 2 en een hoogte van 6:
import matplotlib. pyplot as plt from matplotlib. patches import Rectangle #define Matplotlib figure and axis fig, ax = plt. subplots () #create simple line plot ax. plot ([0, 10],[0, 10]) #add rectangle to plot ax. add_patch (Rectangle((1, 1), 2, 6)) #displayplot plt. show ()
Voorbeeld 2: stileer een rechthoek
De volgende code laat zien hoe u de rechthoek kunt opmaken:
import matplotlib. pyplot as plt from matplotlib. patches import Rectangle #define Matplotlib figure and axis fig, ax = plt. subplots () #create simple line plot ax. plot ([0, 10],[0, 10]) #add rectangle to plot ax. add_patch (Rectangle((1, 1), 2, 6, edgecolor = ' pink ', facecolor = ' blue ', fill= True , lw= 5 )) #displayplot plt. show ()
Een volledige lijst met stijleigenschappen die u op een rechthoek kunt toepassen vindt u hier .
Voorbeeld 3: teken een rechthoek op een afbeelding
De volgende code laat zien hoe u een rechthoek op een afbeelding tekent in Matplotilb. Merk op dat de afbeelding die in dit voorbeeld wordt gebruikt, afkomstig is uit deze Matplotlib-tutorial .
Om dit voorbeeld te reproduceren, downloadt u eenvoudig de foto van de punaise uit deze tutorial en slaat u deze op uw eigen computer op.
import matplotlib. pyplot as plt from matplotlib. patches import Rectangle from PIL import Image #display the image plt. imshow ( Image.open (' stinkbug.png ')) #add rectangle plt. gca (). add_patch (Rectangle((50,100),40,80, edgecolor=' red ', facecolor=' none ', lw= 4 ))
Merk op dat we het hoekargument kunnen gebruiken om de rechthoek een bepaald aantal graden tegen de klok in te draaien:
import matplotlib. pyplot as plt from matplotlib. patches import Rectangle from PIL import Image #display the image plt. imshow ( Image.open (' stinkbug.png ')) #add rectangle plt. gca (). add_patch (Rectangle((50,100),40,80, angle= 30 , edgecolor=' red ', facecolor=' none ', lw= 4 ))
Gerelateerd: Cirkels plotten in Matplotlib (met voorbeelden)