π μμνκΈ°
August 17, 2021 Β· View on GitHub
μ€μΉνκΈ°
TOAST UI μ νλ€μ ν¨ν€μ§ λ§€λμ λ₯Ό μ΄μ©νκ±°λ, μ§μ μμ€ μ½λλ₯Ό λ€μ΄λ°μ μ¬μ©ν μ μλ€. νμ§λ§ ν¨ν€μ§ λ§€λμ μ¬μ©μ κΆμ₯νλ€.
ν¨ν€μ§ λ§€λμ μ¬μ©νκΈ°
TOAST UI μ νλ€μ npm ν¨ν€μ§ λ§€λμ μ λ±λ‘λμ΄ μλ€. κ° ν¨ν€μ§ λ§€λμ κ° μ 곡νλ CLI λꡬλ₯Ό μ¬μ©νλ©΄ μ½κ² ν¨ν€μ§λ₯Ό μ€μΉν μ μλ€. npm μ¬μ©μ μν΄μ Node.jsλ₯Ό 미리 μ€μΉν΄μΌ νλ€.
npm
$ npm install --save @toast-ui/chart # μ΅μ λ²μ
$ npm install --save @toast-ui/chart@<version> # νΉμ λ²μ
Contents Delivery Network (CDN) μ¬μ©νκΈ°
TOAST UI Chartλ CDNμ ν΅ν΄ μ¬μ©ν μ μλ€.
- μλμ μ½λλ‘ CDNμ μ¬μ©ν μ μλ€.
<link rel="stylesheet" href="https://uicdn.toast.com/chart/latest/toastui-chart.min.css" />
<script src="https://uicdn.toast.com/chart/latest/toastui-chart.min.js"></script>
- CDNμ μλμ λλ ν 리 κ΅¬μ‘°λ‘ κ΅¬μ±λμ΄ μλ€.
- uicdn.toast.com/
ββ chart/
β ββ latest
β β ββ toastui-chart.js
β β ββ toastui-chart.min.js
β β ββ toastui-chart.css
β β ββ toastui-chart.min.css
β ββ v4.0.0/
μμ€ νμΌ λ€μ΄λ‘λ
μ¬μ©νκΈ°
HTML
TOAST UI Chartκ° μμ±λ 컨ν μ΄λ μμλ₯Ό μΆκ°νλ€.
<div id="chart"></div>
μλ°μ€ν¬λ¦½νΈ
λΆλ¬μ€κΈ°
TOAST UI μ°¨νΈλ μμ±μ ν¨μλ₯Ό ν΅ν΄ μΈμ€ν΄μ€λ₯Ό μμ±ν μ μλ€. μμ±μ ν¨μμ μ κ·ΌνκΈ° μν΄μλ νκ²½μ λ°λΌ μ κ·Όν μ μλ μΈ κ°μ§ λ°©λ²μ΄ μ‘΄μ¬νλ€.
/* namespace */
const Chart = toastui.Chart;
/* Node.jsμ CommonJS */
const Chart = require('@toast-ui/chart');
/* Node.jsμ ES6 */
import Chart from '@toast-ui/chart';
import { BarChart } from '@toast-ui/chart';
Webpack 4 μμλ ν¨ν€μ§ λͺ¨λμ κ°μ Έμ¬ λ main νλλ³΄λ€ module νλμ μ μλ μ§μ
μ μ μ°μ μ μΌλ‘ κ°μ Έμ¨λ€. λ§μ½ νλ‘μ νΈμμ Webpack 4λ₯Ό μ¬μ©νκ³ require ꡬ문μ μ¬μ©ν΄ @toast-ui/chartλ₯Ό λΆλ¬μ¨λ€λ©΄, module νλμ μ μλ ESM νμΌμ΄ λ‘λλ κ²μ΄λ©°, require ꡬ문μΌλ‘ κ°μ Έμ¬ μ μλλ‘ νΈλμ€ νμΌ λ κ²μ΄λ€. νλ‘μ νΈμμ UMD μ© λ²λ€ νμΌμ΄ νμνλ€λ©΄ @toast-ui/chart/dist/toastui-chart.js νΉμ @toast-ui/chart/dist/toastui-chart.min.js νμΌμ μ§μ λ‘λνμ¬ μ¬μ©ν΄μΌ νλ€.
const Chart = require('@toast-ui/chart/dist/toastui-chart.min.js'); // // UMD μ© λ²λ€ νμΌ λ‘λ
Webpack 5λ exports νλλ₯Ό μ§μνλ€. ν¨ν€μ§μμ μ μλ exports νλλ₯Ό λ³΄κ³ λͺ¨λ μ§μ
μ μ νλ¨ν μ μλ€. λν μλμ κ°μ΄ μλΈ κ²½λ‘λ‘ μ κ·Όνμ¬ νμν μ°¨νΈ νμΌμ λ‘λν μ μλ€.
const Chart = require('@toast-ui/chart'); // ./dist/toastui-chart.js
import { BarChart } from '@toast-ui/chart'; // ./dist/esm/index.js
import BarChart from '@toast-ui/chart/bar';
import ColumnChart from '@toast-ui/chart/column';
import LineChart from '@toast-ui/chart/line';
import AreaChart from '@toast-ui/chart/area';
import LineAreaChart from '@toast-ui/chart/lineArea';
import ColumnLineChart from '@toast-ui/chart/columnLine';
import BulletChart from '@toast-ui/chart/bullet';
import BoxPlotChart from '@toast-ui/chart/boxPlot';
import TreemapChart from '@toast-ui/chart/treemap';
import HeatmapChart from '@toast-ui/chart/heatmap';
import ScatterChart from '@toast-ui/chart/scatter';
import LineScatterChart from '@toast-ui/chart/lineScatter';
import BubbleChart from '@toast-ui/chart/bubble';
import PieChart from '@toast-ui/chart/pie';
import NestedPieChart from '@toast-ui/chart/nestedPie';
import RadarChart from '@toast-ui/chart/radar';
CSS
Chartλ₯Ό μ¬μ©νκΈ° μν΄μλ CSS νμΌμ μΆκ°ν΄μ€μΌ νλ€. import, requireλ₯Ό ν΅ν΄ CSS νμΌμ λΆλ¬μ€κ±°λ, CDNμ ν΅ν΄ λΆλ¬μ¬ μ μλ€.
- ES6 λͺ¨λ
import '@toast-ui/chart/dist/toastui-chart.min.css'; // Chart μ€νμΌ
- Common JS
require('@toast-ui/chart/dist/toastui-chart.min.css');
- CDN
<link rel="stylesheet" href="https://uicdn.toast.com/chart/latest/toastui-chart.min.css" />
μΈμ€ν΄μ€ λ§λ€κΈ°
μμ±μ ν¨μλ el, data, options μΈ κ°λ₯Ό μΈμλ‘ κ°λλ€.
- el: μ°¨νΈλ₯Ό μμμμλ‘ κ°λ HTML μμ
- data: μ°¨νΈμ κΈ°λ°μ΄ λλ μ«μ λ°μ΄ν°
- options: λ²λ‘, μ λ ¬, ν΄ν ν¬λ§· λ± μ¬λ¬ κΈ°λ₯μ λνλ΄λ μ΅μ
const el = document.getElementById('chart');
const data = {
categories: ['Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
series: [
{
name: 'Budget',
data: [5000, 3000, 5000, 7000, 6000, 4000, 1000],
},
{
name: 'Income',
data: [8000, 4000, 7000, 2000, 6000, 3000, 5000],
},
],
};
const options = {
chart: { width: 700, height: 400 },
};
const chart = Chart.barChart({ el, data, options });
// const chart = new BarChart({ el, data, options }); // λ λ²μ§Έ λ°©λ²
