2017-03-02 10 views
2

Ich möchte einige Daten plotten, aber anstatt die Markierung auf der Linie zentriert zu haben, muss der untere Scheitelpunkt des Dreiecks mit der Linie ausgerichtet sein. Wie kann das gemacht werden?Matplotlib: Marker am Rand der Linie zeichnen

import matplotlib.pyplot as mplt 

data = [1.]*10 

mplt.plot(data, 'rv-') 
mplt.show() 

Cheers, Jorge

Antwort

3

Eine Möglichkeit, dies zu erreichen, ist ein spezielles Set von Markern defined in matplotlib zu verwenden:

Hier mein MWE ist

import matplotlib.pyplot as mplt 
from matplotlib.markers import CARETDOWN 

data = [1.]*10 

mplt.plot(data, 'r-') 
mplt.scatter(range(10), data, marker=CARETDOWN, facecolor='r') 
mplt.show() 

Leider es wird nicht zu einem so klaren Dreieck wie das OP für mich. Wenn Sie mehr visuelle Klarheit anstreben, wäre es vielleicht eine bessere Option, etwas in Richtung der Antworten auf this SO question zu schreiben.

+0

Hallo Vlas, danke für Ihre Antwort, sieht sauberer als meine Lösung. Ich habe mit Polygonen gemacht, was ich wollte, aber es ist viel mühsamer. – jorgehumberto