Print text on a graph with values, retaining superscripts?
12 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I have written code (nested for loops) to solve for the constants in the Gompertz Formula. This curve is fit to the data I had gathered. Once the iteration is complete I have values for A, B, and C (the constants in the equation). I want to graph the original data, the fitted curve, and then write the equation on the plot of the fitted curve. The following is the code I used to write the text:
text(Xt,Yt,['Y(t)=',num2str(A),'e^',num2str(B),'e^',num2str(C),'t'])
This works, however when it prints on the graph, the formatting is not ideal. Basically, both B and C are always negative numbers. Immediately following each e, the negative sign is superscript, but everything following it is normal. I found some text tutorials that indicated that placing curly brackets around the text that you want to be superscript should fix this, i.e.
text(Xt,Yt,['Y(t)=',num2str(A),'e^',{num2str(B),'e^',{num2str(C),'t'}}])
but when I run that code I get the error message
Error using text
Cell array of strings may only contain string and numeric matrices
Is there a way to insert the calculated constants in the equation AND retain the equation formatting? Any help would be greatly appreciated... Thanks!
0 commentaires
Réponse acceptée
Walter Roberson
le 14 Nov 2013
text(Xt,Yt,['Y(t)=',num2str(A),'e^{',num2str(B),'}e^{',num2str(C),'}t'])
Plus de réponses (1)
Azzi Abdelmalek
le 14 Nov 2013
text(Xt,Yt,['Y(t)=',num2str(A),'e^',num2str(B),'e^',num2str(C),'t'])
2 commentaires
Azzi Abdelmalek
le 14 Nov 2013
Look at this example
A=12;
B=23;
C=15;
plot(1:20);
Bt=num2str(B)
Bt=[repmat('^',1,numel(Bt));Bt]
Ct=num2str(C);
Ct=[repmat('^',1,numel(Ct));Ct]
text(5,5,['Y(t)=',num2str(A),'e',Bt(:)','e',Ct(:)','t'])
Voir également
Catégories
En savoir plus sur Text Data Preparation dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!