Bug report
Bug summary
When retrieving handles used in legend, marker property is not kept.
Code for reproduction
import matplotlib.pyplot as plt
point = plt.Line2D([1],[1], marker='o')
legend = plt.gcf().legend(handles=[point], labels=['point'])
# First way
handles = legend.legendHandles
handles[0].get_marker()
# Second way
lines= legend.get_lines()
lines[0].get_marker()
Actual outcome
Expected outcome
When plotting an Axes legend, get_legend_handles_labels() can be used, which does return the right marker. There isn't such a method in Figure, so when using Legend methods or properties such as legend.get_lines() or legend.legendHandles, line2D marker isn't kept.
Is there a better way of retrieving handles from a legend?
Am I doing something wrong?
Matplotlib version
- Operating System: Windows 10
- Matplotlib Version: 2.0.2
- Python Version: 3.6.1
cc @juanlu001
Bug report
Bug summary
When retrieving handles used in legend,
markerproperty is not kept.Code for reproduction
Actual outcome
Expected outcome
When plotting an
Axeslegend,get_legend_handles_labels()can be used, which does return the right marker. There isn't such a method inFigure, so when usingLegendmethods or properties such aslegend.get_lines()orlegend.legendHandles, line2D marker isn't kept.Is there a better way of retrieving handles from a legend?
Am I doing something wrong?
Matplotlib version
cc @juanlu001