Hello everyone.
I am trying to work on plotting my graph with specific function.
T1 = 1/(T*7.74809172e-5)*(0.1491e-14) % this is the function that I want to use.
This is the code that I used to plot graph.
clear all
file = readtable('si_100_trans.xlsx');
x_raw = table2array(file(1:301,1));
T_raw = table2array(file(1:301,2));
E = x_raw-0.6;
T = T_raw;
T1 = 1/(T*7.74809172e-5)*(0.1491e-14)
T1 = 1×301
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
plot(E,T1)
However, when I checked command window, all of the value on T1 showed 0 except just 5.8029 at the end.
I thought that the function was the problem, but when I calculated each value, the function showed results with nonzero values.
Can anyone help me with these problems?
Thank you.

 Accepted Answer

Try adding the dot for the element-wise division: 1./(T*7.74809172e-5)*(0.1491e-14)
file = readtable('si_100_trans.xlsx');
x_raw = table2array(file(1:301,1));
T_raw = table2array(file(1:301,2));
E = x_raw-0.6;
T = T_raw;
T1 = 1./(T*7.74809172e-5)*(0.1491e-14);
plot(E,T1)

3 Comments

Thank you very much!
I didn't expect that dot was the problem.
From the question, I mentioned that using this equation with typing every single value without using dot division( ex. 1/(0.7*7.74809172e-5)*(0.1491e-14)) also showed proper answers.
Are there some important differences btw dot division and without dot division?
You want to divide 1 for every single element of array T, so you use dot for element-wise division. You can read Array vs. Matrix Operations to understand array operations.
Thank you!!

Sign in to comment.

More Answers (0)

Categories

Find more on 2-D and 3-D Plots in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!