How can i obtain a nice curve ?
조회 수: 1 (최근 30일)
이전 댓글 표시
Hi
How can i obtain a nice curve (like attached curve or logarithmic scale), when my program is
x= [1e3; 1e4; 1e5; 1e6; 1e7];
p=[7.87E-07 1.77E-06 1.72E-06 4.44E-07 5.03E-08];
plot(x,p)
댓글 수: 0
채택된 답변
Star Strider
2017년 1월 14일
편집: Star Strider
2017년 1월 14일
See if this does what you want:
x= [1e3; 1e4; 1e5; 1e6; 1e7];
p=[7.87E-07 1.77E-06 1.72E-06 4.44E-07 5.03E-08];
figure(1)
loglog(x,p)
grid
xlabel('Load Resistance [\Omega]')
ylabel('Peak Power [mW/g^{2}]')
EDIT — Forgot the square brackets ‘[]’ in ylabel.
댓글 수: 4
Star Strider
2017년 1월 15일
You can use interp1 with the 'spline' and loglog options to create the interpolation vector, but it will not produce the curve you want. I already did that without success.
Your best option is to provide a diagram or mathematical model of the system you are measuring, and do a (probably nonlinear) fit to it. (I might be able to develop an equation for the model in the diagram if it has fewer than 5 parameters.)
추가 답변 (1개)
John D'Errico
2017년 1월 14일
loglog(x,p)
grid on
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/176605/image.jpeg)
It seems a decent enough curve to me. You could use a spline to interpolate, or just a low order polynomial, as fit to the logs of your data. Anytime you have data that spans many orders of magnitude, it is a hint to use logs.
참고 항목
카테고리
Help Center 및 File Exchange에서 Smoothing에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!