Chart.js
Chart.js ni makutano wa JavaScript wa kufikia bila malipo, kwa kuzengera chati za kuzingatia HTML.
Hii ni moja ya makutano ya JavaScript kwa sababu ya uharibifu zaidi, na ina aina za chati zilizobaki:
- Chati cha kipendena (Scatter Plot)
- Chati cha kipendena (Line Chart)
- Chati cha kipendena (Bar Chart)
- Chati cha kipendena (Pie Chart)
- Chati cha kipendena (Donut Chart)
- Chati cha kipendena (Bubble Chart)
- 面积图(Area Chart)
- 雷达图(Radar Chart)
- 混合图(Mixed Chart)
如何使用 Chart.js?
Chart.js 很容易使用。
首先,添加指向提供 CDN(内容分发网络)的链接:
然后,将
canvas 元素必须有一个唯一的 id。
这是这样!
典型的散点图语法:
const myChart = new Chart("myChart", { type: "scatter", data: {}, options: {} });
典型的折线图语法:
const myChart = new Chart("myChart", { data: {}, options: {} });
典型的条形图语法:
const myChart = new Chart("myChart", { type: "bar", data: {}, options: {} });
散点图
房价 vs. 面积
源代码
const xyValues = [ {x:50, y:7}, {x:60, y:8}, {x:70, y:8}, {x:80, y:9}, {x:90, y:9}, {x:100, y:9}, {x:110, y:10}, {x:120, y:11}, {x:130, y:14}, {x:140, y:14}, {x:150, y:15} ]; new Chart("myChart", { type: "scatter", data: { datasets: [{ pointRadius: 4, pointBackgroundColor: "rgba(0,0,255,1)", data: xyValues }] , options:{...} });
折线图
房价 vs. 面积
源代码
const xValues = [50,60,70,80,90,100,110,120,130,140,150]; const yValues = [7,8,8,9,9,9,10,11,14,14,15]; new Chart("myChart", { data: { labels: xValues, datasets: [{ backgroundColor:"rgba(0,0,255,1.0)", borderColor: "rgba(0,0,255,0.1)", data: yValues }] , options:{...} });
如果将 borderColor 设置为 0
,则可以散点图绘制折线图:
borderColor: "rgba(0,0,0,0)",
多行
源代码
const xValues = [100,200,300,400,500,600,700,800,900,1000]; new Chart("myChart", { data: { labels: xValues, datasets: [{ data: [860,1140,1060,1060,1070,1110,1330,2210,7830,2478], borderColor: "red", fill: false },{ data: [1600,1700,1700,1900,2000,2700,4000,5000,6000,7000], borderColor: "green", fill: false },{ data: [300,700,2000,5000,6000,4000,2000,1000,200,100], borderColor: "blue", fill: false }] , options: { legend: {display: false} } });
线性图
源代码
const xValues = []; const yValues = []; generateData("x * 2 + 7", 0, 10, 0.5); new Chart("myChart", { data: { labels: xValues, datasets: [{ pointRadius: 1, borderColor: "rgba(255,0,0,0.5)", data: yValues }] , options: {...} }); function generateData(value, i1, i2, step = 1) { for (let x = i1; x <= i2; x += step) { yValues.push(eval(value)); xValues.push(x); } }
条形图
源代码
var xValues = ["意大利", "法国", "西班牙", "美国", "阿根廷"]; var yValues = [55, 49, 44, 24, 15]; var barColors = ["red", "green","blue","orange","brown"]; new Chart("myChart", { type: "bar", data: { labels: xValues, datasets: [{ backgroundColor: barColors, data: yValues }] , options: {...} });
只给一条上色:
var barColors = ["blue"];
所有条只有一种颜色:
var barColors ="red";
mabaya ya rangi tofauti zaidi:}}
var barColors = [ "rgba(0,0,255,1.0)", "rgba(0,0,255,0.8)", "rgba(0,0,255,0.6)", "rgba(0,0,255,0.4)", "rgba(0,0,255,0.2)", ];
bar cha umbo wa horiza
Kutumia type ya "bar"
Inafikia "horizontalBar"
:
type: "horizontalBar",
tukio la kichakacha
mifano
new Chart("myChart", { type: "pie", data: { labels: xValues, datasets: [{ backgroundColor: barColors, data: yValues }] , options: { title: { display: true, text: "Uchafuzi wa vina vya vinu vya jua kwenye nchi yote" } } });