Error when trying to create legend with stem plot
4 次查看(过去 30 天)
显示 更早的评论
I receive the following error when plotting a legend with my stem plot:
??? Error using ==> feval
Value must be finite and greater than zero
Error in ==> scribe.legend.methods>build_legendinfo_component at
497
lich=feval(lic.ConstructorName,'Parent',double(p),lic.PVPairs{:});
Error in ==> scribe.legend.methods>build_legendinfo_component at
506
build_legendinfo_component(lich,gcomp(k),tx,ty);
Error in ==> scribe.legend.methods>build_legendinfo_token at 461
build_legendinfo_component(gh,gcomp(k),tx,ty);
Error in ==> scribe.legend.methods at 17
feval(args{:});
Error in ==> scribe.legend.methods>create_legend_items at 1500
methods(h,'build_legendinfo_token',tokenhandle(end),li,tokenx,tokeny);
Error in ==> scribe.legend.methods at 17
feval(args{:});
Error in ==> scribe.legend.legend at 115
methods(h,'create_legend_items',children);
Error in ==> legend>make_legend at 389
lh=scribe.legend(ha,orient,location,position,children,listen,strings,propargs{:});
Error in ==> legend at 287
[h,msg] = make_legend(ha,varargin(arg:end));
Here is the code that I use to create the legend:
stem(Tim,MetCond_RW,'MarkerSize',0,'Color','c');
stem(Tim,MetCond_RH,'MarkerSize',0,'Color','b');
stem(Tim,MetCond_SW,'MarkerSize',0,'Color','m');
stem(Tim,MetCond_SM,'MarkerSize',0,'Color','g');
stem(Tim,MetCond_SS,'MarkerSize',0,'Color','r'); hold off;
datetick('x','mm/dd');
xlim([datenum('2012/01/15 00:00:00') datenum('2012/02/05 00:00:00')]); grid on
grid on;
set(gca,'YTick',[0:1:5])
set(gca,'YTickLabel',{'N';'RW';'RH';'SW';'SM';'SS'})
%set(gca,'YTickLabel',{0; 1; 2; 3; 4; 5; 6})
legend('N','RW','RH','SW','SM','SS',2);
Here, N is 0, RW is 1, and so on and so forth. I defined these values through a MATLAB script that was called earlier. Is this because I have made the value of N to be 0? I believe that the problem persists even if I remove N. Can someone help me out here? I've spent a lot of time on this and don't really know how to proceed. Thanks for your time.
0 个评论
采纳的回答
Walter Roberson
2013-1-25
Is 2 intended to be a location? If so, then change it to 'Location', 'NorthWest'
It is also recommended to avoid confusion between properties and legend entries by passing the legend entries in a cell array:
legend( {'N', 'RW','RH','SW','SM','SS'}, 'Location', 'NorthWest' )
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Legend 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!