Architecture Decision Record

Active theme: Light

← ឧទាហរណ៍កំណត់ត្រាការសម្រេចចិត្ត

កំណត់ត្រាការសម្រេចចិត្តខាងស្ថាបត្យកម្ម៖ ឧបករណ៍បណ្ណាល័យតារាងសម្រាប់បង្ហាញទិន្នន័យដោយប្រើ TypeScript និង JSON

គោលបំណងចម្បង៖
ជ្រើសរើសឧបករណ៍តារាងទំនើបសម្រាប់បង្កើតការបង្ហាញអន្តរកម្ម ដោយផ្តោតលើទិន្នន័យហិរញ្ញវត្ថុ ទិន្នន័យវិទ្យាសាស្ត្រ និងទិន្នន័យរដ្ឋាភិបាល ដោយប្រើ TypeScript និង JSON។ បណ្ណាល័យគួរផ្តល់មុខងាររឹងមាំ ភាពបត់បែន និងជាកូដចំហ។

បរិបទ និងតម្រូវការ៖

  1. ការអភិវឌ្ឍបែប Agile (អាទិភាពខ្ពស់): ក្នុងនាមជាក្រុមហ៊ុនថ្មី ការធ្វើវដ្តលឿន ការបង្កើតគំរូ និងភាពបត់បែនក្នុងការអភិវឌ្ឍគឺចាំបាច់។ បណ្ណាល័យតារាងត្រូវអនុញ្ញាតឱ្យមានវដ្តអភិវឌ្ឍលឿន។

  2. ប្រភេទតារាង (អាទិភាពខ្ពស់):

    • តារាងដូណាត (Doughnut Chart)
    • តារាងរ៉ាដា (Radar Chart)
    • តារាងដំណើរការចងក្រុម (Clustering Process Chart)
    • តារាងតំបន់ដែលមានអ័ក្សពេលវេលា (Area Chart with Time Axis)
    • តារាងទៀនជប៉ុន (Candlestick Chart)
    • តារាង Nightingale
    • ផែនទី Geo SVG

    ប្រភេទតារាងទាំងនេះសំខាន់ជាពិសេសសម្រាប់បង្ហាញសំណុំទិន្នន័យស្មុគស្មាញ ដូចជានិន្នាការហិរញ្ញវត្ថុ រង្វាស់វិទ្យាសាស្ត្រ និងព័ត៌មានភូមិសាស្ត្រ។

  3. ឥតគិតថ្លៃ និងកូដចំហ (អាទិភាពខ្ពស់): ឧបករណ៍គួរតែជាកូដចំហ ដើម្បីជៀសវាងថ្លៃអាជ្ញាប័ណ្ណ ផ្តល់តម្លាភាព និងផ្តល់ភាពបត់បែនសម្រាប់ការកែសម្រួល។

  4. លក្ខណៈវិនិច្ឆ័យសំខាន់តិច:

    • ល្បឿនពេលដំណើរការ: ទោះបីប្រសិទ្ធភាពសំខាន់ វាមិនមែនជាអាទិភាពកំពូលសម្រាប់ការសម្រេចចិត្តនេះទេ។
    • ភាពអាចពង្រីកបាន: ទោះបីភាពអាចពង្រីកបានជាទូទៅសំខាន់ តម្រូវការភ្លាមៗគឺកសាង MVP ដែលអាចលូតលាស់តាមពេលវេលា។ កង្វល់ភាពអាចពង្រីកបានអាចដោះស្រាយនៅពេលក្រោយ។
    • ភាពត្រូវគ្នាថយក្រោយ: មិនមែនជាកង្វល់ចម្បងសម្រាប់ការកសាងដំបូងទេ ដរាបណាបណ្ណាល័យទំនើប និងមានការថែទាំជាប្រចាំ។

បណ្ណាល័យដែលបានវាយតម្លៃ៖

  1. Apache ECharts
  2. Chart.js
  3. ApexCharts
  4. AG Charts
  5. Highcharts
  6. Carbon Charts
  7. Layer Cake
  8. D3.js

1. Apache ECharts

ទិដ្ឋភាពទូទៅ:
Apache ECharts គឺជាបណ្ណាល័យតារាងដ៏មានអានុភាព និងបត់បែនសម្រាប់ការបង្ហាញអន្តរកម្មដែលអាចកែសម្រួលបាន។ វាផ្តល់ការគាំទ្រតារាងច្រើនប្រភេទ ហើយរឹងមាំជាពិសេសក្នុងការបង្ហាញថាមវន្តស្មុគស្មាញ។

ចំណុចខ្លាំង:

  • អន្តរកម្មទំនើប: ECharts ពូកែក្នុងការផ្តល់តារាងអន្តរកម្ម ដោយផ្តល់មុខងារដូចជាការពង្រីក ការអូស និងការធ្វើបច្ចុប្បន្នភាពទិន្នន័យថាមវន្ត។
  • ដូណាត រ៉ាដា ទៀនជប៉ុន ផែនទី Geo SVG: ECharts គាំទ្រប្រភេទតារាងដែលត្រូវការជាច្រើន រួមទាំងដូណាត រ៉ាដា ទៀនជប៉ុន និងការបង្ហាញផែនទីភូមិសាស្ត្រ។
  • ឥតគិតថ្លៃ និងកូដចំហ: ECharts គឺជាបណ្ណាល័យកូដចំហ ដែលសមស្របនឹងលក្ខណៈប្រយ័ត្នថវិការបស់ក្រុមហ៊ុនថ្មី ហើយផ្តល់សេរីភាពក្នុងការកែប្រែកូដ។
  • ភាពបត់បែន និងភាពពង្រីកបាន: អាចកែសម្រួលបានខ្ពស់ ជាមួយការគាំទ្រទូលំទូលាយសម្រាប់ចលនា ការបង្ហាញផ្ទាល់ខ្លួន និងបច្ចេកទេសតារាងទំនើប។

ចំណុចខ្សោយ:

  • ខ្សែកោងរៀន: ECharts ទោះមានអានុភាព អាចមានខ្សែកោងរៀនចោតជាង ដោយសារភាពបត់បែន និង API ទូលំទូលាយរបស់វា។
  • ភាពស្មុគស្មាញនៃឯកសារ: ឯកសារមានភាពទូលំទូលាយ ប៉ុន្តែអាចលើសលប់សម្រាប់អ្នកអភិវឌ្ឍន៍ដែលទើបចាប់ផ្តើមប្រើវា។

សេចក្តីសន្និដ្ឋាន:
ECharts សមស្របខ្លាំងសម្រាប់គម្រោង ដោយសារការគាំទ្រតារាងអន្តរកម្ម រួមទាំងប្រភេទដែលត្រូវការទាំងអស់ដូចជាតារាងទៀនជប៉ុន តារាងរ៉ាដា និងផែនទីភូមិសាស្ត្រ។ លក្ខណៈកូដចំហរបស់វាស្របនឹងតម្រូវការគម្រោងសម្រាប់ភាពបត់បែន និងប្រសិទ្ធភាពថ្លៃដើម។


2. Chart.js

ទិដ្ឋភាពទូទៅ:
Chart.js គឺជាបណ្ណាល័យតារាងសាមញ្ញ និងងាយប្រើសម្រាប់កសាងប្រភេទតារាងទូទៅ។ វាល្បីអំពីភាពសាមញ្ញ និងភាពងាយរួមបញ្ចូល។

ចំណុចខ្លាំង:

  • ភាពងាយប្រើ: Chart.js សាមញ្ញណាស់ក្នុងការដំឡើង និងប្រើ ជាមួយខ្សែកោងរៀនតិចតួចបំផុត។
  • កូដចំហ: Chart.js ឥតគិតថ្លៃ និងជាកូដចំហ ដែលសំខាន់សម្រាប់កាត់បន្ថយថ្លៃដើម។
  • ប្រភេទតារាងទូទៅ: វាគាំទ្រតារាងមូលដ្ឋានដូចជាដូណាត តំបន់ រ៉ាដា និងបន្ទាត់ ដែលគ្របដណ្តប់តម្រូវការចម្បងភាគច្រើន។

ចំណុចខ្សោយ:

  • តារាងទំនើបមានកំណត់: Chart.js មិនគាំទ្រប្រភេទតារាងស្មុគស្មាញដើមកំណើតដូចជាតារាងទៀនជប៉ុន ផែនទី geo SVG ឬតារាងដំណើរការចងក្រុមទេ។ ទោះបីមុខងារទាំងនេះអាចបន្ថែមតាមរយៈកម្មវិធីជំនួយ ឬការកែសម្រួល វាមិនត្រង់ដូចជាមួយបណ្ណាល័យផ្សេងទៀតទេ។
  • អន្តរកម្ម: ទោះបី Chart.js គាំទ្រអន្តរកម្មមូលដ្ឋាន (ឧ. tooltip និងឥទ្ធិពលពេលដាក់កណ្តុរលើ) វាមិនផ្តល់មុខងារទំនើបដូច ECharts ឬ D3.js ទេ។

សេចក្តីសន្និដ្ឋាន:
Chart.js ល្អសម្រាប់គម្រោងសាមញ្ញ និងលឿន ប៉ុន្តែការខ្វះការគាំទ្រប្រភេទតារាងស្មុគស្មាញ ធ្វើឱ្យវាមិនសមស្របសម្រាប់កម្មវិធីដែលផ្តោតលើទិន្នន័យច្រើនជាមួយតម្រូវការទំនើបដូចជាតារាងទៀនជប៉ុន និងផែនទីភូមិសាស្ត្រ។ វាជាជម្រើសល្អសម្រាប់ការបង្កើតគំរូ ប៉ុន្តែសម្រាប់ប្រភេទតារាងដែលត្រូវការ ណែនាំឱ្យប្រើឧបករណ៍ទំនើបជាង។


3. ApexCharts

ទិដ្ឋភាពទូទៅ:
ApexCharts គឺជាបណ្ណាល័យតារាងទំនើបដែលផ្តល់ប្រភេទតារាងច្រើន ហើយផ្តោតលើការបង្ហាញអន្តរកម្មជាមួយ API ងាយប្រើ។

ចំណុចខ្លាំង:

  • មុខងារអន្តរកម្ម: ApexCharts ផ្តល់តារាងអន្តរកម្មជាមួយ tooltip ការពង្រីក ការអូស និងការធ្វើបច្ចុប្បន្នភាព។
  • ការគាំទ្រតារាងហិរញ្ញវត្ថុ និងវិទ្យាសាស្ត្រ: វាគាំទ្រប្រភេទតារាងច្រើនប្រភេទ រួមទាំងតារាងទៀនជប៉ុន តារាងរ៉ាដា និងតារាងតំបន់។
  • ភាពងាយប្រើ: វាមាន API ត្រង់ៗ និងសាមញ្ញក្នុងការរួមបញ្ចូលទៅក្នុងគម្រោង។
  • ឥតគិតថ្លៃ និងកូដចំហ: ApexCharts ផ្តល់កំណែកូដចំហឥតគិតថ្លៃដែលសមស្របសម្រាប់ករណីប្រើប្រាស់ជាច្រើន។

ចំណុចខ្សោយ:

  • ការកែសម្រួលស្មុគស្មាញ: ទោះបីវាផ្តល់មុខងារច្រើន ជម្រើសកែសម្រួលមិនបត់បែនដូច ECharts ឬ D3.js សម្រាប់តម្រូវការតារាងស្មុគស្មាញខ្ពស់ ឬផ្ទាល់ខ្លួនទេ។
  • ផែនទីភូមិសាស្ត្រ: ApexCharts មិនគាំទ្រផែនទីភូមិសាស្ត្រ ឬតារាងដំណើរការចងក្រុមដើមកំណើតទេ ដែលត្រូវការសម្រាប់គម្រោងនេះ។

សេចក្តីសន្និដ្ឋាន:
ApexCharts គឺជាបេក្ខជនរឹងមាំដោយសារភាពងាយប្រើ និងអន្តរកម្មរបស់វា ប៉ុន្តែវាខ្វះខាតលើប្រភេទតារាងទំនើបមួយចំនួន ជាពិសេសតម្រូវការផែនទីភូមិសាស្ត្រ និងតារាងចងក្រុម។ វាជាជម្រើសល្អសម្រាប់តារាងសាមញ្ញជាង ប៉ុន្តែខ្វះមុខងារមួយចំនួនដែលត្រូវការ។


4. AG Charts

ទិដ្ឋភាពទូទៅ:
AG Charts គឺជាបណ្ណាល័យតារាងកម្រិតពាណិជ្ជកម្មដែលរចនាឡើងសម្រាប់ប្រសិទ្ធភាព និងភាពជាក់លាក់។ វាសមស្របខ្លាំងសម្រាប់បង្កើតផ្ទាំងគ្រប់គ្រងហិរញ្ញវត្ថុ វិទ្យាសាស្ត្រ និងអាជីវកម្ម។

ចំណុចខ្លាំង:

  • ប្រភេទតារាងទំនើប: AG Charts គាំទ្រប្រភេទតារាងទំនើបជាច្រើន រួមទាំងតារាងទៀនជប៉ុន តារាងតំបន់ តារាងរ៉ាដា និងច្រើនទៀត។ វាក៏ផ្តល់ការរួមបញ្ចូលស៊ីជម្រៅជាមួយផលិតផល AG-Grid ផ្សេងទៀត។
  • ប្រសិទ្ធភាពខ្ពស់: វាផ្តល់ប្រសិទ្ធភាពឆ្នើម ជាពិសេសនៅពេលដោះស្រាយសំណុំទិន្នន័យធំ។
  • អន្តរកម្ម: AG Charts គាំទ្រមុខងារអន្តរកម្មផ្សេងៗដូចជាការពង្រីក tooltip និងការធ្វើបច្ចុប្បន្នភាពថាមវន្ត។

ចំណុចខ្សោយ:

  • មិនឥតគិតថ្លៃទាំងស្រុង: ទោះបី AG Charts ផ្តល់កំណែឥតគិតថ្លៃ កំណែមុខងារពេញលេញត្រូវបង់ប្រាក់ ដែលអាចជាឧបសគ្គសម្រាប់ក្រុមហ៊ុនថ្មីដែលព្យាយាមកាត់បន្ថយថ្លៃដើម។
  • ភាពស្មុគស្មាញ: ទោះបីបណ្ណាល័យសម្បូរមុខងារ វាអាចហួសហេតុសម្រាប់គម្រោងសាមញ្ញជាង ហើយអាចតម្រូវឱ្យមានការដំឡើង និងការកំណត់រចនាសម្ព័ន្ធច្រើនជាងធៀបនឹងជម្រើសផ្សេងទៀត។

សេចក្តីសន្និដ្ឋាន:
AG Charts មានអានុភាព និងសម្បូរមុខងារ ប៉ុន្តែប្រហែលជាមិនសមស្របបំផុតដោយសារលក្ខណៈពាណិជ្ជកម្ម និងរចនាសម្ព័ន្ធថ្លៃដើមរបស់វា។ ភាពសមស្របរបស់វាអាស្រ័យលើថាតើថវិកាអាចទទួលយកកំណែបង់ប្រាក់បានឬអត់ ឬថាតើជម្រើសកូដចំហត្រូវបានគេពេញចិត្តជាង។


5. Highcharts

ទិដ្ឋភាពទូទៅ:
Highcharts គឺជាបណ្ណាល័យតារាងពេញនិយមដែលល្បីអំពីប្រភេទតារាងច្រើន និងជម្រើសកែសម្រួលដ៏មានអានុភាព។

ចំណុចខ្លាំង:

  • ប្រភេទតារាងពេញលេញ: Highcharts គាំទ្រតារាងច្រើនប្រភេទ រួមទាំងទៀនជប៉ុន រ៉ាដា តំបន់ និងផែនទីភូមិសាស្ត្រ។
  • អន្តរកម្ម និងថាមវន្ត: Highcharts ផ្តល់មុខងារអន្តរកម្មសម្បូរបែប រួមទាំង drill-down ការពង្រីក និងការអូស។
  • ភាពងាយប្រើ: វាមាន API ងាយប្រើ និងឯកសារល្អ ដែលធ្វើឱ្យងាយចាប់ផ្តើម។

ចំណុចខ្សោយ:

  • អាជ្ញាប័ណ្ណពាណិជ្ជកម្ម: ទោះបី Highcharts ផ្តល់កំណែឥតគិតថ្លៃសម្រាប់ការប្រើប្រាស់ក្រៅពាណិជ្ជកម្ម អាជ្ញាប័ណ្ណពាណិជ្ជកម្មថ្លៃ ដែលអាចជាគុណវិបត្តិសំខាន់សម្រាប់ក្រុមហ៊ុនថ្មី។
  • ខ្សែកោងរៀន: ទោះបីមិនចោតដូច ECharts ខ្សែកោងរៀនរបស់ Highcharts នៅតែអាចជាបញ្ហាប្រឈមសម្រាប់អ្នកចាប់ផ្តើមដំបូង។

សេចក្តីសន្និដ្ឋាន:
Highcharts គឺជាបណ្ណាល័យសម្បូរមុខងារ ប៉ុន្តែអាជ្ញាប័ណ្ណពាណិជ្ជកម្មរបស់វាធ្វើឱ្យវាមិនសូវសមស្របសម្រាប់គម្រោងកូដចំហដែលប្រយ័ត្នថ្លៃដើម។ ជម្រើសតារាងពេញលេញរបស់វាជាចំណុចល្អ ប៉ុន្តែបញ្ហាអាជ្ញាប័ណ្ណកំណត់ភាពទាក់ទាញរបស់វាសម្រាប់ករណីប្រើប្រាស់នេះ។


6. Carbon Charts

ទិដ្ឋភាពទូទៅ:
Carbon Charts គឺជាបណ្ណាល័យតារាងដែលបង្កើតដោយ IBM រចនាឡើងសម្រាប់បង្កើតតារាងដែលទាក់ទាញភ្នែក និងអាចកែសម្រួលបានខ្ពស់។

ចំណុចខ្លាំង:

  • ភាពអាចកែសម្រួលបាន: Carbon Charts អនុញ្ញាតឱ្យមានការកែសម្រួលយ៉ាងទូលំទូលាយនូវរូបរាង និងឥរិយាបថនៃតារាង។
  • កូដចំហ: វាឥតគិតថ្លៃ និងជាកូដចំហ ដែលស្របនឹងតម្រូវការគម្រោងសម្រាប់ដំណោះស្រាយដែលសមស្របថវិកា។
  • ការគាំទ្រតារាងទូទៅ: វាគាំទ្រប្រភេទតារាងទូទៅដូចជាដូណាត រ៉ាដា និងតារាងតំបន់ ទោះបីវាខ្វះការគាំទ្រប្រភេទទំនើបជាងដូចជាផែនទីភូមិសាស្ត្រ ឬតារាងទៀនជប៉ុន។

ចំណុចខ្សោយ:

  • ប្រភេទតារាងទំនើបមានកំណត់: វាមិនគាំទ្រផែនទីភូមិសាស្ត្រ តារាងដំណើរការចងក្រុម ឬតារាងទៀនជប៉ុន ដែលចាំបាច់សម្រាប់គម្រោងទេ។
  • ប្រព័ន្ធអេកូឡូស៊ីតូចជាង: Carbon Charts មានសហគមន៍ និងប្រព័ន្ធអេកូឡូស៊ីតូចជាងធៀបនឹងបណ្ណាល័យតារាងធំជាងដូចជា ECharts ឬ Highcharts។

សេចក្តីសន្និដ្ឋាន:
Carbon Charts ជាកូដចំហ និងអាចកែសម្រួលបាន ប៉ុន្តែខ្វះការគាំទ្រប្រភេទតារាងស្មុគស្មាញជាងដែលត្រូវការសម្រាប់គម្រោងនេះ។ វាសមស្របជាងសម្រាប់តម្រូវការតារាងសាមញ្ញជាង។


7. Layer Cake

ទិដ្ឋភាពទូទៅ:
Layer Cake គឺជាបណ្ណាល័យបង្ហាញទិន្នន័យដែលរចនាឡើងសម្រាប់បង្កើតការបង្ហាញជាស្រទាប់ដែលបត់បែន។

ចំណុចខ្លាំង:

  • ស្រទាប់ដែលអាចកែសម្រួលបាន: វាផ្តល់ជម្រើសស្រទាប់ដ៏មានអានុភាពសម្រាប់ការបង្ហាញស្មុគស្មាញ។
  • កូដចំហ: វាឥតគិតថ្លៃ និងជាកូដចំហ ដែលធ្វើឱ្យវាជាជម្រើសអាចអនុវត្តបានសម្រាប់គម្រោងប្រយ័ត្នថវិកា។

ចំណុចខ្សោយ:

  • ឯកសារមានកំណត់: Layer Cake ខ្វះឯកសារទូលំទូលាយ និងការគាំទ្រពីសហគមន៍ ដែលធ្វើឱ្យពិបាកធ្វើការជាមួយធៀបនឹងបណ្ណាល័យដែលបានបង្កើតរឹងមាំជាង។
  • មិនត្រូវបានកសាងសម្រាប់តារាង: Layer Cake សមស្របជាងសម្រាប់ការបង្ហាញដែលមិនមែនជាតារាង ដូច្នេះជម្រើសតារាងភ្លាមៗរបស់វាមានកំណត់។

សេចក្តីសន្និដ្ឋាន:
ទោះគួរឱ្យចាប់អារម្មណ៍សម្រាប់ការបង្ហាញប្លែកៗ Layer Cake មិនល្អបំផុតសម្រាប់តម្រូវការតារាងប្រពៃណីដូចជាតារាងទៀនជប៉ុន ឬតារាងរ៉ាដាទេ។ វាសមស្របជាងសម្រាប់ការបង្ហាញផ្ទាល់ខ្លួនក្រៅវិសាលភាពតារាងស្តង់ដារ។


8. D3.js

ទិដ្ឋភាពទូទៅ:
D3.js គឺជាបណ្ណាល័យ JavaScript ដ៏មានអានុភាពសម្រាប់បង្កើតការបង្ហាញជំរុញដោយទិន្នន័យតាមរយៈ HTML, SVG និង CSS។

ចំណុចខ្លាំង:

  • ភាពបត់បែនគ្មានអ្វីប្រៀបបាន: D3.js អនុញ្ញាតឱ្យបង្កើតការបង្ហាញផ្ទាល់ខ្លួនស្ទើរតែគ្រប់ប្រភេទ ដែលធ្វើឱ្យវាមានអានុភាពខ្ពស់សម្រាប់តារាងទំនើប និងអន្តរកម្ម។
  • មុខងារទូលំទូលាយ: វាគាំទ្រប្រភេទតារាងទាំងអស់ដែលត្រូវការ រួមទាំងផែនទីភូមិសាស្ត្រ តារាងចងក្រុម និងច្រើនទៀត។
  • អាចកែសម្រួលបាន: កម្រិតនៃការកែសម្រួលក្នុង D3.js គ្មានអ្វីប្រៀបបាន ដែលអនុញ្ញាតឱ្យអ្នកអភិវឌ្ឍន៍កសាងការបង្ហាញដែលតម្រូវតាមតម្រូវការខ្ពស់។

ចំណុចខ្សោយ:

  • ខ្សែកោងរៀនចោត: D3.js មានខ្សែកោងរៀនចោត ហើយស្មុគស្មាញជាងក្នុងការរួមបញ្ចូលធៀបនឹងបណ្ណាល័យផ្សេងទៀត។
  • ចំណាយពេល: ការកសាងតារាងក្នុង D3.js អាចចំណាយពេល ជាពិសេសសម្រាប់តារាងទូទៅដូចជាតារាងទៀនជប៉ុន ឬតារាងដូណាត។

សេចក្តីសន្និដ្ឋាន:
D3.js មានអានុភាពខ្លាំងណាស់សម្រាប់តារាងទំនើប និងផ្ទាល់ខ្លួន ប៉ុន្តែហួសហេតុសម្រាប់ករណីប្រើប្រាស់ធម្មតាជាច្រើន ដោយសារខ្សែកោងរៀនចោត និងពេលអភិវឌ្ឍ។ វាល្អបំផុតសម្រាប់ស្ថានភាពដែលបណ្ណាល័យតារាងផ្សេងទៀតមិនផ្តល់កម្រិតនៃការកែសម្រួលដែលត្រូវការ។


សេចក្តីសន្និដ្ឋាន

បន្ទាប់ពីវាយតម្លៃបណ្ណាល័យដោយផ្អែកលើតម្រូវការរបស់គម្រោង Apache ECharts លេចធ្លោជាជម្រើសល្អបំផុត។ វាគាំទ្រប្រភេទតារាងពេញលេញដែលត្រូវការ រួមទាំងផែនទីភូមិសាស្ត្រ តារាងទៀនជប៉ុន និងតារាងចងក្រុម។ វាជាកូដចំហ សម្បូរមុខងារ និងមានអន្តរកម្មខ្ពស់ ដែលស្របគ្នាយ៉ាងល្អឥតខ្ចោះជាមួយគោលដៅរបស់គម្រោង។ ទោះបី D3.js ផ្តល់ភាពបត់បែនច្រើនបំផុត ភាពស្មុគស្មាញ និងការវិនិយោគពេលវេលារបស់វាធ្វើឱ្យវាមិនល្អបំផុតសម្រាប់ក្រុមហ៊ុនថ្មីដែលចង់ធ្វើវដ្តឱ្យលឿន។ ApexCharts និង Chart.js គឺជាជម្រើសជំនួសល្អសម្រាប់គម្រោងសាមញ្ញជាង ប៉ុន្តែខ្វះការគាំទ្រប្រភេទតារាងទំនើប។