کلیدستان

نسخه‌ی کامل: یافتن x از روی y
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
سلامممممممممممم

من یه شکل دارم که مجموعه ای از چندین نمودار ه و از فرمولی که توی mfile نوشتم به دست می آد

میتونم با دستور
a=max(Po)
مقدار ماکزیمم هر نمودار رو به دست بیارم

مشکل من اینکه چجوری مقدار V همون نقطه رو به دست بیارم - چون میخوام روی نمودار از دستوری استفاده کنم که این نقطه رو روی نمودار نشون بده

این یه شکل ساده از نمودار های منه


در واقع من دنبال دستوریم که اون نقطه ی قرمز و به من بده روی نمودار


بی اندازه سپاس گزارم که کمکم میکنید
 
سلام.
فکر می کنم لینک زیر همون چیزی هست که دنبالش هستید :

http://www.kelidestan.com/forum/showthread.php?tid=3994

در اونجا گفته شده که چطور میتونیم محل ماکزیمم بردار رو پیدا کنیم.

حل شـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــد
ممنونم

فقط یه مسئله اضافی

این برای زمانیه که بردار ما مثلا حرکت بر حسب زمان باشه
کد:
plot(x)
حالا اگه بردار ما دو متغییره باشه
مثلا
کد:
plot(x,y)
از این دستور نمیشه استفاده کرد!

چون موقعیت x ماکزیمم رو میگه

استاد برای اینم راه حلی هست؟
براتون مثال می زنم :

کد:
clear all
close all
clc

x=0:0.1:2*pi;
y=sin(x);
plot(x,y)

y_length=length(y);
y_max=max(y)

position_of_max=0;
for nn=1:y_length
    if (y(nn)==y_max)
        position_of_max=nn;
    end
end
position_of_max

x_max=x(position_of_max)

hold on
plot(x_max,y_max,'rs','LineWidth',5,'MarkerSize',2);

چون عناصر با موقعیت مشابه در دو بردار x و y با هم متناظر هستند، بنابراین با پیدا کردن موقعیت عنصر ماکزیمم در یک بردار، می توانیم مقدار عنصر متناظر آن در بردار دیگر را نیز بیابیم.
در مثال بالا ابتدا مقدار ماکزیمم بردار y (یعنی y_max) و همچنین موقعیت آن ( position_of_max ) را پیدا کرده ایم و سپس بر اساس شماره موقعیت ماکزیمم، مقدار عنصر متناظر را در بردار x به دست آورده ایم (x_max).

نتیجه اجرای کد متلب بالا :