Anonim

ٹائی چارٹس ماڈیول جو آپ کو ایپلیسیٹر مارکیٹ میں مل سکتا ہے وہ صرف iOS کے لئے ہے۔ میں ایک ہلکا پھلکا حل چاہتا تھا جو اینڈرائیڈ اور آئی او ایس دونوں پر کام کر سکے اور چارٹ ، بار ، لائن ، پائی وغیرہ کی سب سے عام چیز مہی .ا کرسکے۔ اس بارے میں جانے کا آسان ترین طریقہ یہ تھا کہ میں ویب منظر میں چارٹنگ جاوا اسکرپٹ لائبریری کا استعمال کروں۔

میری قابلیت:

  1. تیز
  2. کوئی jQuery انحصار نہیں ہے
  3. ابتدائی قرعہ اندازی پر حرکت پذیری
  4. عمدہ اسٹائل اچھی

اب جاوا اسکرپٹ چارٹنگ لائبریریاں بہت ساری ہیں ، لیکن پوری طرح نہیں جو مذکورہ بالا قابلیت کو پورا کرتی ہیں۔ ایک بے حد رقم jQuery پر انحصار کرتی ہے۔ میں نے کچھ لوگوں کے ساتھ گڑبڑ کی ہے جو اس سے پہلے jQuery پر منحصر ہیں ، اور جب عام طور پر بہت سارے ڈیٹا پوائنٹس ہونے پڑتے ہیں تو ان کا آہستہ آہستہ رینڈر وقت پڑتا ہے ، اور بہت سارے کا مطلب ہے کہ میں پوری طرح سے نہیں ہوں گے۔ ویب ویو ایک سب سے زیادہ وسائل کے گہرائی والے اجزاء میں سے ایک ہے جسے آپ استعمال کرسکتے ہیں ، لہذا چیزوں کو آسان رکھنے کے لئے جتنا زیادہ کام کیا جاسکتا ہے ، اتنا ہی بہتر

ہفتوں کی تلاش کے بعد میں نے دوسرے دن ایک نئی لائبریری سے ٹھوکر کھائی جس سے میں چاہتا ہوں۔ چارٹ جے ایس۔ کس طرح ڈیٹا پوائنٹس کو کسٹم کرتے ہوئے ، ویب ویو میں چارٹ لاگو کرنے کا طریقہ یہاں ہے۔

اس پروجیکٹ میں 3 فائلیں ہیں ، خود بخود تیار کردہ فائلوں کو چھوڑ کر
app.js
ماخذ / چارٹ html
ماخذ / چارٹ.wvjs - اس فائل میں جاوا اسکرپٹ پر مشتمل ہے Chart.js یہاں واقع ہے

app.js var win = Titanium.UI.createWindow ({پس منظر کا رنگ: '# fff'})؛ var چارٹ ویو = Ti.UI.createWebView ({اونچائی: 200، چوڑائی: 320، بائیں: 0، ​​اوپری: 0، شو سکرولبارز: جھوٹے، ٹچ فعال: جھوٹے، یو آر ایل: '/source/chart.html'؛)؛ win.add (چارٹ ویو)؛ var بٹن = Ti.UI.createButton ({عنوان: 'دوبارہ تخلیق کریں' ، اوپر: 220 ،})؛ win.add (بٹن)؛ button.addEventListener ('پر کلک کریں' ، فنکشن () {var اختیارات = {} options اختیارات.ڈیٹا = نیا سرنی (ریاضی.فلوور (ریاضی.راینڈوم () * 1001)، ریاضی فلور (ریاضی.راینڈوم () * 1001) ، ریاضی.فلوور (ریاضی.راینڈوم () * 1001) ، میتھ فلور (میتھ رینڈوم () * 1001) ، میتھ فلور (میتھ رینڈوم () * 1001)) Ti ٹ ای ایپ.فائر ایونٹ ('رینڈرچارٹ') ، اختیارات)؛ })؛ win.open ()؛

ہم اپنے ونڈو ، ویب ویو ، اور نئے اعداد و شمار کے ساتھ گراف کو دوبارہ ڈرا کرنے کے لئے ایک بٹن تیار کرکے شروع کرتے ہیں۔ جب بٹن پر کلک کیا جاتا ہے ، تو ہم ایک اعتراض تیار کرتے ہیں جسے آپشن کہتے ہیں۔ 1 اور 1000 کے درمیان 5 بے ترتیب تعداد تیار اور اختیارات کو تفویض کی جاتی ہیں۔ ڈیٹا سرنی۔

پھر II.App.fireEvent کو 2 دلائل کے ساتھ بلایا جاتا ہے۔ رینڈرچارٹ 1 ویں آئٹم پاس ہوا ہے ، اور اس کا مطلب یہ ہے کہ کہیں کہیں ہمارے کوڈ میں ، ہمیں اسی نام کے ساتھ اسی طرح کے پروگرام سننے والے کی ضرورت ہے۔ دوسرا آئٹم اختیارات کا اعتراض ہے۔ اب ، آپ خود سے پوچھ سکتے ہیں کہ میں نے براہ راست کسی صف کو کیوں نہیں پاس کیا …… یہ کام نہیں کرے گا ، کسی شے کی توقع کی جارہی ہے۔ آبجیکٹ پر سرنی منسلک کرکے ، ہم اس اعداد و شمار کو واقعہ سننے والوں کے پاس بھیج سکتے ہیں جو ہماری HTML فائل میں واقع ہوگا۔

ویب ٹیو کو خود ٹائٹینیم کے ساتھ بات چیت کرنے کے لئے ، اس طرح کے ایونٹ ہینڈلر کا استعمال ضروری ہے۔ ٹائٹینیم اور ویب ویو کو مواصلات کی ایک لائن کھولنے کے لئے ایک راستہ کی ضرورت ہے ، اور بالکل یہی کام کرتا ہے۔

خیالات / چارٹ html چارٹ

ہماری چارٹنگ لائبریری کی پہلے سے طے شدہ فائل کی توسیع .js ہے۔ میں نے محسوس کیا ہے کہ .js ایکسٹینشن کا استعمال کرتے ہوئے ٹائٹینیم کے ساتھ تنازعات پیدا ہوسکتے ہیں ، لہذا یہ یقینی بنائیں کہ آپ اپنی جاوا اسکرپٹ فائلوں کا نام تبدیل کریں جو کسی ویب ویو سے طلب کی گئی ہیں۔ میری ترجیح .wvjs ہے ، لیکن آپ واقعی جو بھی استعمال کرسکتے ہیں۔

آپ دیکھ سکتے ہیں کہ ہمارے پاس رینڈرچارٹ کیلئے ایونٹ لسٹنر کے اندر ہمارے چارٹنگ جاوا اسکرپٹ کوڈ موجود ہیں ۔ جب ہمارے ٹائٹینیم کوڈ سے فائر ایونٹ کو پھانسی دی جاتی ہے تو اسے پھانسی دے دی جاتی ہے۔ کینوس کی چوڑائی اور اونچائی کو HTML میں صفات شامل کرنے کے بجائے جاوا اسکرپٹ سے واضح کیا گیا ہے ، اس مقصد کو پورا کرنا ہے کہ جب ہم نئے اعداد و شمار کے ساتھ ایک نیا چارٹ تیار کرتے ہیں تو کینوس میں کیا موجود ہے۔

ٹائٹینیم ایپلیریٹر کے ساتھ چارٹس ڈسپلے کرنا