I have the following question about a Matplotlib plot.
I am plotting data from different experiment as scatter plot; each of the set of data has its own marker and color.
I would like to have them grouped in one single line of the legend because for me they have all the same "meaning".
Es.
Let's say I have 3 set of data from 3 research group:
plt.plot(group1, marker='^', c='r', label='groupdata')
plt.plot(group2, marker='o', c='b', label='groupdata')
plt.plot(group3, marker='s', c='g', label='groupdata')
I'd like to have a single line in legend that shows:
^ o s = groupdata
The best way to show you what I mean is this awfull drawing ;D
As suggested, a working example; as you can see I got 3 lines in the legend, all the data are named 'groupdata'; I'd like to know if it is possible to group them under the same legend line.
import matplotlib.pyplot as plt
import numpy as np
group1 = np.array([[1,4,6],[3,2,5]])
group2 = np.array([[1,5,9],[2,2,5]])
group3 = np.array([[1,4,2],[11,2,7]])
plt.plot(group1[0,:],group1[1,:], 'ro', marker='^', label='groupdata')
plt.plot(group2[0,:],group2[1,:], 'bo', marker='o', label='groupdata')
plt.plot(group3[0,:],group3[1,:], 'go', marker='s', label='groupdata')
plt.legend()
plt.show()
Thanks for your help
See Question&Answers more detail:
os