How do I combine legend entries for a spline and data points?

I'm plotting a series of discrete data points and using a 'pchip' spline to create a smooth curve that passes through the points. In the legend I would like it to appear as a line with a marker and not as two separate entries. Is there a way to combine them into a single entry?
Thanks!

 Réponse acceptée

Matt Fig
Matt Fig le 16 Oct 2012
Modifié(e) : Matt Fig le 16 Oct 2012
Here is an example:
% First set up the data and the spline fit plot.
x = -3:3;
y = [-1 -1 -1 0 1 1 1];
t = -3:.01:3;
p = pchip(x,y,t);
plot(x,y,'or',t,p,'-b')
L = legend('Fitted Data'); % Pass only final string.
% Now we can fix the legend.
H = findall(gcf,'marker','none','linestyle','none');
set(H,'linestyle','-','color',[0 0 1]);
set(L,'location','east')

3 commentaires

Excellent! Thank you much!
I just ran this script from the answer in R2018b since I have a similar problem and it does not work. This is the final result. As you can see it still only labels the red dots in the legend when it should also have a blue line going through it as far as I understand the original question.
CombineLegend.png
same question as Nathaniel

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by