How to show the variable name instead of its value in a plot's text, when using "syms", "text" and "latex" functions
3 次查看(过去 30 天)
显示 更早的评论
Question: By using both syms, latex and text functions/tools (as in the example here below), how can I show the variable name instead of its value, in a plot's text ?
What I currently have: In this example, if I assign a value to the variable "a", i.e. "a = 0.01", the latex function will show its value, i.e. "0.01" (i.e. "1/100") and not its name, i.e. "a".
syms x
a = 0.01 ;
y = exp(-a*x); % equation to show inside the plot
figure
fplot(y, [0 500])
text(100,0.5, ['$y = ' latex(y) '$'], 'Interpreter','latex', 'FontSize',16)
0 个评论
采纳的回答
Dyuman Joshi
2022-8-26
syms y(a,x)
y(a,x) = exp(-a*x); % equation to show inside the plot
figure
fplot(y(0.01,x), [0 500])
text(100,0.5, ['$y = ' latex(y) '$'], 'Interpreter','latex', 'FontSize',16)
更多回答(1 个)
Walter Roberson
2022-8-26
You cannot do that, not without reconstructing the formula
syms x
a = 0.01 ;
y = exp(-a*x); % equation to show inside the plot
children(y)
children(ans{1})
Notice that there is no "a" anywhere in the breakout of the expression.
2 个评论
Walter Roberson
2022-8-26
Consider this:
a = 1
b = a * 5
a = 2
What is b now? Does it become 10 because a changed to 2 and b is a * 5 ? Or is it 5? Or is it internally a formula "a * 5" that you would somehow be able to extract if you only knew how?
When you build a = 0.01, y = exp(-a*x), it works the same way as the numeric case.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Assumptions 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!