Php 在chart.js的单个数据中显示多个数据
我用Php 在chart.js的单个数据中显示多个数据,php,graph,chart.js,Php,Graph,Chart.js,我用chart.js设计了一个简单的图形,看起来很酷 但现在我想展示他们在一个月到另一个月之间的数据 表示他们的数据如下: 2017年1月1日:12 2017年1月3日:16 等等 现在,我想以图像的形式显示他们1月至2月的数据,如下所示: 这是我的简单代码 var ctx = document.getElementById('myChart').getContext('2d'); var chart = new Chart(ctx, { // The type of char
chart.js
设计了一个简单的图形,看起来很酷
但现在我想展示他们在一个月到另一个月之间的数据
表示他们的数据如下:
2017年1月1日:12
2017年1月3日:16
等等
现在,我想以图像的形式显示他们1月至2月的数据,如下所示:
这是我的简单代码
var ctx = document.getElementById('myChart').getContext('2d');
var chart = new Chart(ctx, {
// The type of chart we want to create
type: 'line',
// The data for our dataset
data: {
labels: ["January 2017", "February 2017", "March 2017", "April 2017", "May 2017", "June 2017", "July 2017"],
datasets: [{
label: "My First dataset",
backgroundColor: 'rgb(255, 99, 132,0.25)',
borderColor: 'rgb(255, 99, 132)',
data: [0, 10, 5, 2, 20, 30, 15],
lineTension:0
}]
},
// Configuration options go here
options: {}
});
jshiddle这里:
我已经谷歌这么多次,但没有任何解决方案是他们的,所以请建议我。谢谢:)您可以使用以下x轴刻度回调函数完成此操作
ticks: {
callback: function(e) {
var tick = e.match(/(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sept|Oct|Nov|Dec).*?\d+/g)[0];
if (tick != aR) {
aR = tick;
return tick;
}
}
}
假设您的标签数组看起来有点像这样<代码>[“2017年1月1日”、“2017年1月3日”、“2017年2月4日”…]
ᴡᴏʀᴋɪɴɢ ᴇxᴀᴍᴘʟᴇ强>
var aR=null;//存储区已返回勾号
var ctx=document.getElementById('myChart').getContext('2d');
var图表=新图表(ctx{
键入:“行”,
数据:{
标签:[“2017年1月1日”、“2017年1月3日”、“2017年2月4日”、“2017年2月9日”、“2017年3月3日”、“2017年3月15日”],
数据集:[{
标签:“我的第一个数据集”,
背景颜色:“rgba(255,99,132,0.5)”,
边框颜色:“rgb(255,99,132)”,
数据:[12,16,10,11,9,15],
线张力:0
}]
},
选项:{
比例:{
xAxes:[{
滴答声:{
autoSkip:错误,
回调:函数(e){
var tick=e.match(/(一月|二月|三月|四月|五月|六月|七月|八月|九月|十月|十一月|十二月)*?\d+/g)[0];
如果(勾选!=aR){
aR=滴答声;
返回勾号;
}
}
}
}],
雅克斯:[{
滴答声:{
分:0,,
最多:30
}
}]
}
}
});代码>
你明白我的问题了吗@ℊααnd?我只想在一个标签内显示圆点上的整个一月份数据。比如说,如果我们有大量的1月数据,那么它显示2017年1月至2017年2月之间。哦,我想我明白了。你要使用矩量表吗?我不知道矩量表的用法。如果你要制作时间刻度表,那么你必须使用矩量表。谷歌欢迎!!