how to convert power-law plot to loglog plot
現在この質問をフォロー中です
- フォローしているコンテンツ フィードに更新が表示されます。
- コミュニケーション基本設定に応じて電子メールを受け取ることができます。
エラーが発生しました
ページに変更が加えられたため、アクションを完了できません。ページを再度読み込み、更新された状態を確認してください。
古いコメントを表示
How do I plot power-law function: y = 2000 * x^(-.5) in log-log graph?
採用された回答
dpb
2017 年 6 月 16 日
ezplot('2000 * x^(-.5)')
set(gca,'yscale','log','xscale','log')
xlim([0.1 10])
or, of course, use loglog
fnEx=@(x) 2000*x.^(-.5); % function handle; NB: the .^ to vectorize solution
x=[0.01 1000];
y=fnEx(x);
figure, loglog(x,y)
Salt to suit...
7 件のコメント
Thanks! Could you also check why there is no graph plotted?
ezplot('307/(1+(307*x/14137)^0.706)');
set(gca,'yscale','log','xscale','log');
xlim([10, 10^5]);
ylim([1, 1000]);
grid on;
dpb
2017 年 6 月 16 日
The problem with ezplot -- it uses predefined x range; here [0 6] and you set lower limit on x axis to 10 -- there's no data past 6 in the plot.
Use the alternate solution of computing y vector over the desired range directly; note again you need to vectorize the function to be able to compute it efficiently with a vector if inputs. The "dot" operators are the key.
To see this is the problem,
xlim([0.01 10])
and Voila! the data will magically appear!
You can determine that explot uses interval [0 2pi] by
xdata=get(get(gca,'children'),'xdata'); % the x data in plot
disp([xdata(1) xdata(end)])
Xin Zhang
2017 年 6 月 16 日
I see. That is very helpful! I think ezplot has too much limitation and i want to go back to fnEX.
In order to plot the function: 307/(1+(307*x/14137)^0.706) to loglog using the first method u taught me, how should I change the match expression? THanks!
Xin Zhang
2017 年 6 月 16 日
I would like to see the plot of x from 10 - 100,000 and y from 1 - 1,000.
dpb
2017 年 6 月 16 日
Well, create the x vector over that range, then, and follow the outline I've given. It'll be a lot more meaningful learning experience to at least try it on your own rather than relying on somebody else to do it for you in its entirety.
Under the section on "Arithmetic" in "Elementary Math" there's a "Concepts" subtopic under which is the "Array vs. Matrix Operations" topic. Study that to learn the difference between "^" and ".^" and the other "dot operators" vis a vis the matrix versions.
Xin Zhang
2017 年 6 月 16 日
I See, thank you!
dpb
2017 年 6 月 16 日
And, if you do get stuck, we're here...but there should be ample bread crumbs already... :)
その他の回答 (0 件)
カテゴリ
ヘルプ センター および File Exchange で Networks についてさらに検索
製品
参考
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
