طراحی

ساخت وبلاگ

این مقاله روش هایی را توضیح می دهد که به کاربران اجازه می دهد حاشیه نویسی را روی نمودارهای AnyStock ترسیم کنند.

لطفاً توجه داشته باشید: هنگام کار با حاشیه نویسی، می توانید از روش های نمودار یا نمودار استفاده کنید (به بخش PlotController و ChartController در AnyChart API مراجعه کنید). البته اگر در نمودار شما فقط یک نمودار وجود داشته باشد، تفاوت قابل توجهی بین این دو گزینه وجود ندارد.

نمونه برنامه

برای آسان تر کردن فرآیند یکپارچه سازی، یک نمونه برنامه وب با منبع باز وجود دارد که نشان می دهد چگونه AnyStock Stock Drawing Tools را می توان پیاده سازی کرد.

برای دانلود منبع آن (یا به سادگی آن را جدا کنید)، به این صفحه مراجعه کنید: GitHub: AnyStock - ابزارهای طراحی و حاشیه نویسی نسخه نمایشی.

شروع طراحی

برای شروع ترسیم، متد PlotController startDrawing() یا ChartController startDrawing() را فراخوانی کنید و با انتخاب یکی از فهرست های Annotation Types نوع حاشیه نویسی را مشخص کنید. از نماد شی برای پیکربندی حاشیه نویسی استفاده کنید:

plot. annotations(). startDrawing("مثلث"); plot. annotations(). startDrawing(); 

در اینجا یک نمونه اولیه وجود دارد که نحوه استفاده از ویژگی Drawing را نشان می دهد. کاربران می توانند انواع حاشیه نویسی را ترسیم کنند یا همه حاشیه نویسی ها را از طرح حذف کنند (برای کسب اطلاعات بیشتر در مورد حذف حاشیه نویسی، به بخش فرعی حذف در زیر مراجعه کنید):

لغو طراحی

برای لغو فرآیند ترسیم، روش PlotController cancelDrawing() یا ChartController cancelDrawing() را فراخوانی کنید:

plot. annotations(). cancelDrawing() 

به عنوان مثال، شما باید 3 نقطه را برای ترسیم حاشیه نویسی Pitchfork و Triangle Andrews تنظیم کنید و ممکن است بخواهید پس از تنظیم 2 نقطه، نقاشی را لغو کنید. در نمونه زیر، هنگامی که 2 نقطه را تنظیم می کنید و روی هر یک از دکمه هایی که ترسیم را شروع می کند کلیک می کنید، روند ترسیم لغو می شود و نقاط ناپدید می شوند:

ممنوعیت کشیدن نقاشی

برای جلوگیری از ترسیم حاشیه نویسی در برخی از نمودارها، از متد ()enabled استفاده کنید:

// ایجاد نمودار نمودار سهام = anychart. stock();// ایجاد دو نمودار chart. plot(0). ohlc(mapping); chart. plot(1). line(mapping);// اجازه طراحی روی نمودار اول نمودار. plot(0). annotations(). enabled(true);// ممنوعیت کشیدن بر روی نمودار نمودار دوم نمودار. plot(1). annotations(). enabled(false);// شروع به کشیدن حاشیه نویسی کنید. chart. annotations(). startDrawing("مثلث"); 

در این نمونه، حاشیه نویسی ها را می توان تنها در طرح اول (OHLC) ترسیم کرد:

ممنوعیت ویرایش

برای ممنوع کردن یا اجازه ویرایش یک حاشیه نویسی، از متد allowEdit() استفاده کنید. در این مقاله می توانید اطلاعات بیشتری کسب کنید: تنظیمات عمومی

رسیدگی به رویدادها

هنگام کار با حاشیه نویسی، رویدادهای زیر قابل کنترل هستند:

 

ارزش شرح
حاشیه نویسی نوع رویداد برای پایان نقاشی حاشیه نویسی.
حاشیه نویسی نوع رویداد برای حاشیه نویسی انتخاب کنید.
حاشیه نویسی نوع رویداد برای انتخاب حاشیه نویسی.
حاشیه نویسی رویدادی که درست پس از رویداد Mousedown رخ می دهد.
حنجره حاشیه نویسی رویدادی که هنگام کشیدن رخ می دهد.
حاشیه نویسی رویدادی که درست بعد از رویداد ماوسپ رخ می دهد.

لطفاً توجه داشته باشید که باید شنوندگان را به شیء نمودار وصل کنید.

در نمونه زیر از شنونده برای تغییر تنظیمات بصری حاشیه نویسی و عنوان نمودار هنگام انتخاب حاشیه نویسی استفاده می شود:

// ایجاد یک شنونده رویداد برای نمودار رویداد AnnotationsElect. Listen ("Annotationselect" ، عملکرد (E)<var selectedannotation="e.annotation;" change="" the="" annotation="" stroke="" selectedannotation.selectstroke("#ff0000",="" 3,="" "5="" 2",="" "round");="" chart="" title="" chart.title("the="" "="" +="" selectedannotation.gettype()="" is="" selected.");="">); 

مدیریت حاشیه نویسی

روش های مختلفی وجود دارد که به شما امکان می دهد حاشیه نویسی ها را مدیریت کنید:

  • getAnnotationat ()
  • getSelectedAnnotation ()
  • getAnnotationsCount ()
  • حذف مجدد ()
  • removeannotationat ()
  • removeAllannotations ()
  • انتخاب کنید()
  • نامشخص ()

روشهای getAnnotationat () ، getSelectedAnnotation () و GetAnnotationsCount () استفاده می شوند ، حاشیه نویسی را با یک شاخص خاص ، یک حاشیه نویسی انتخاب شده یا تعداد کل حاشیه نویسی دریافت کنید. بقیه روشها ، همراه با این 3 ، امکان حذف و انتخاب / انتخاب حاشیه نویسی را فراهم می کنند.

حذف

از روشهای حذف () و حذف مجدد () برای حذف یک حاشیه نویسی واحد استفاده می شود ، و removealannotations () همه حاشیه نویسی ها را حذف می کند.

در نمونه زیر ، دکمه هایی وجود دارد که امکان حذف همه حاشیه نویسی ها ، آخرین حاشیه نویسی ترسیم شده و یک انتخاب شده را فراهم می کند:

// حذف کلیه طرح های حاشیه نویسی. Annotations (). removeAllannotations () ؛// دریافت تعداد حاشیه نویسی Var AnnotationsCount = plot. annotations (). getAnnotationsCount () ؛// آخرین طرح حاشیه نویسی را حذف کنید. Annotations (). removeNoTationat (AnnotationsCount - 1) ؛// دریافت حاشیه نویسی انتخاب شده var selectannotation = plot. annotations (). getSelectedAnnotation () ؛// حذف طرح حاشیه نویسی انتخاب شده. Annotations (). removeAnnotation (SelectedAnnotation) ؛ 

انتخاب / انتخاب

برای انتخاب یا عدم انتخاب حاشیه نویسی ، از روش های Select () و unselect () استفاده کنید:

// اولین حاشیه نویسی var firstannotation = plot. annotations (). getAnnotationat (0) ؛// اولین طرح حاشیه نویسی را انتخاب کنید. Annotations (). (FirstAnnotation) را انتخاب کنید.// انتخاب یک طرح حاشیه نویسی منتخب (). انتخاب نشده () ؛ 

صرفه جویی در

روش های زیادی برای ذخیره حاشیه نویسی در یک سرور یا بارگیری آنها وجود دارد. در زیر می توانید یک نمونه اساسی را پیدا کنید که نشان می دهد چگونه می توانید آن را با رویدادهای ویژه و روش هایی که Anychart ارائه می دهد ، انجام دهد.

  • OnDocumentReady () - این روش هنگام آماده شدن سند نامیده می شود. ممکن است محتوای خارجی برای این لحظه بارگیری نشود.
  • AnnotationDrawingFinish - از این رویداد می توان برای ردیابی حاشیه نویسی های تازه ایجاد شده (یا تغییر یافته) و ارسال لیست حاشیه نویسی (یا جدید) به یک سرور استفاده کرد. اطلاعات مربوط به وقایع حاشیه نویسی را در بخش رویدادهای حمل و نقل مشاهده کنید.

روشهای زیر از کمک بسیار خوبی برخوردار هستند:

  • روش Tojson () برای deserialization لیست حاشیه نویسی ها استفاده می شود ،
  • از روش Fromjson () برای سریال سازی لیست حاشیه نویسی ها استفاده می شود.

در نمونه کد زیر ، توابع سفارشی SendAnnotationStoserver () و GetAnnotationsFromServer () مورد استفاده ، که مانند متغیرها برای کارکردهایی که می توانند حاشیه نویسی ها را از سرور ارسال و دریافت کنند ، عمل می کنند.

// ذخیره همه حاشیه نویسی ها SendAnnotationStoserver (Chart. Plot (). حاشیه نویسی (). Tojson (true)) ؛// بارگیری کلیه حاشیه نویسی های ذخیره شده VAR = getAnnotationsFromServer () ؛Chart. Plot (). حاشیه نویسی (). fromjson (حاشیه نویسی) ؛< Span> OnDocumentReady () - این روش هنگام آماده شدن سند نامیده می شود. ممکن است محتوای خارجی برای این لحظه بارگیری نشود. 
بازار رمزارزها...
ما را در سایت بازار رمزارزها دنبال می کنید

برچسب : نویسنده : محمود کیانوش بازدید : 28 تاريخ : سه شنبه 17 مرداد 1402 ساعت: 22:07