PDA

View Full Version : ابزار رسم نمودار 2 بعدی خوب کدومه؟



Babak.Hassanpour
سه شنبه 08 اردیبهشت 1388, 13:44 عصر
با سلام به همه دوستان.
بنده به يک کنترل اکتيوايکس يا هر چيز مشابه ديگر ،جهت ترسيم نمودار 2 بعدی مانند شکل زیر نيازمندم.منتها اين کنترل يا متد ترسيم مي بايست شرايطي داشته باشد به اين ترتيب که:
1-با گرفتن مختصات x,y در هرلحظه ، نقطه مربوطه را رسم کند ، نه در انتهاي کار توسط آرايه اي از نقاط(پس MSChart منتفي است) توضيح:بين زمان رسيدن اطلاعات نقطه فعلي و نقطه بعدي فاصله اي زماني غير قابل پيش بيني وجود دارد.لذا اطلاعات هر نقطه به محض دريافت مي بايست ترسيم شوند.
2-ترجيحا پس از ترسيم ، کليه نقاط توسط خطي به يکديگر مرتبط شوند.(البته ازين مورد ميشه چشم پوشي کرد)
3-درجه بندي آن قابل تغيير باشد
4-مقدار X,Y با قرار گرفتن ماوس روی نمودار نشان داده بشه
5-امکان پرینت یا ذخیره به فرمت عکس را داشته باشه
6-ترجيحا به اين شکل يا با ظاهري زيبا باشد

http://www.basava.ir/plot.jpg


از عزيزاني که با کنترل هاي گراف و ترسيم نمودار کار کرده اند تقاضا دارم با توجه به نکات فوق بهترين ابزار جهت اين کار را فقط معرفي نمايند.به نمونه کد و ... نيازي نيست.
ضمنا MSchart ,Zgraph,GnuPlot,NtGraph امتحان شده اند و رضایت بخش نبودند.
با تشکر

Babak.Hassanpour
چهارشنبه 09 اردیبهشت 1388, 20:59 عصر
کسی کامپوننت دیگه ای سراغ نداره؟

vbhamed
پنج شنبه 10 اردیبهشت 1388, 00:25 صبح
سلام

چرا مي گيد با MSChart نميشه ؟
اگر از دستوراتي مشابه زير استفاده كنيد به محض دادن مقدار نمودار رسم مي شود



With MSChart1

.Column = 1
.Row = 1
.Data = 70

DoEvents

End With

Babak.Hassanpour
پنج شنبه 10 اردیبهشت 1388, 10:56 صبح
سلام.ممنون که پاسخ دادید.چارت مایکروسافت فاقد شرایط لازم برای کار منه.عرض کردم که می خواهم که اطلاعات هر نقطه با قرارگرفتن نشانگر ماوس روی آن نمایش داده بشه که فکر نمی کنم MSChart این رو ساپورت کنه .چون کمی مشکل پسند هستم و چارت های زیبا تری رو دیدم اون زیاد به دلم نچسبید.حقیقتش من اون چیزی که می خواهم رو قبلا یه جا دیدم منتها اصلا یادم نمی آید کجا بود.برای همین دوستان هر کنترل چارت و رسم نمودایر که سراغ دارند فقط معرفی کنند .دانلود و تستش با خودم.قول می دم کد نمونه و ... نخوام.فقط اسم چند تا کنترل (حالا رایگان هم نبود عیبی نداره) رو معرفی کنید(لینک دانلود و .. هم نمی خواهم.فقط اسم البته وجود خارجی داشته باشه کافیه).باز هم از شما و همه متشکرم.

vbhamed
پنج شنبه 10 اردیبهشت 1388, 14:56 عصر
سلام
ComponentOne Studio ابزار خوبي داره

ضمن اينكه اگر .NET كار كنيد .NET Charting بسيار كامل و زيباست و البته رايگان

Babak.Hassanpour
پنج شنبه 10 اردیبهشت 1388, 17:03 عصر
بیخود نیست میگن اگه میخواهی شطرنج باز خوبی بشی با حرفه ای ها بازی کن.
حرفه ای های برنامه نویسی هم ابزار های خوبی در چنته دارند رو نمی کنند.
هرچند پلاتش تعریفی نداشت ولی تنوع زیادی داشت.11 تا ابزار دیگه هم توی بسته اش بود .
در کل ارزش 70 مگابایت دانلود رو داشت.دستتون درد نکنه .
چارتش با چارت مایکروسافت تفاوت چندانی نداره.
راستی هنوز برای نمودار دنبال کامپوننت می گردم.لطفا کمک کنید.

Hossein Moradi
شنبه 12 اردیبهشت 1388, 08:20 صبح
http://www.advsofteng.com/

kpour2001
دوشنبه 28 اردیبهشت 1388, 13:07 عصر
دوست عزیز MSchart قویتر از این حرفاست
برای اینکار بهتره مثالهای خوده مایکروسافت رو ببینی بیش از 200 مثال برای ویندوز اپلیکیشن
http://code.msdn.microsoft.com/mschart/Release/ProjectReleases.aspx?ReleaseId=1591

تو مثالا قسمتی هست به نام Real Time Data که برای کار شما مفیده دوتا مثال مفید زده

Tasiyan
دوشنبه 28 اردیبهشت 1388, 15:40 عصر
Option Explicit
Private Const PI As Double = 3.14159265359
Private Const CircleEnd As Double = -2 * PI

Public Sub DrawPiePiece(lColor As Long, fStart As Double, fEnd As Double)
Dim dStart As Double
Dim dEnd As Double
Picture1.FillColor = lColor
Picture1.FillStyle = 0
dStart = fStart * (CircleEnd / 100)
dEnd = fEnd * (CircleEnd / 100)
Picture1.Circle (100, 100), 60, , dStart, dEnd
End Sub

Private Sub Command1_Click()
Picture1.ScaleMode = vbPixels
Call DrawPiePiece(vbYellow, 0.001, 36)
Call DrawPiePiece(vbBlack, 36, 55)
Call DrawPiePiece(vbGreen, 55, 75)
Call DrawPiePiece(vbBlue, 75, 99.999)
End Sub

:لبخند:

AND

http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=71430&lngWId=1

:چشمک:

Hamid Reza Rahimi
سه شنبه 22 دی 1388, 14:34 عصر
سلام من هم مشکل چارت زیبا و چند صفحه ای دارم چارت مثل تی چارت دلفی کسی داره ؟