Javascript Chart.js下拉列表选择1天、昨天和7天
Javascript Chart.js下拉列表选择1天、昨天和7天,javascript,chart.js,Javascript,Chart.js,今天 昨天 最后7天 函数构建图(标签、值、图表标题){ 风险值数据={ 标签:标签, 数据集:[{ 标签:chartTitle,//为系列命名 数据:价值观, 背景颜色:[ “rgba(50,99,231,0.2)”, “rgba(50,90231,0.2)”, “rgba(50,90231,0.2)”, “rgba(50,90231,0.2)”, “rgba(50,90231,0.2)”, ‘rgba(50,90231,0.2)’ ], 边框颜色:[ "rgba(50,90,231,1)",
今天
昨天
最后7天
函数构建图(标签、值、图表标题){
风险值数据={
标签:标签,
数据集:[{
标签:chartTitle,//为系列命名
数据:价值观,
背景颜色:[
“rgba(50,99,231,0.2)”,
“rgba(50,90231,0.2)”,
“rgba(50,90231,0.2)”,
“rgba(50,90231,0.2)”,
“rgba(50,90231,0.2)”,
‘rgba(50,90231,0.2)’
],
边框颜色:[
"rgba(50,90,231,1)",,
“rgba(54162235,1)”,
"rgba(50,90,231,1)",,
"rgba(50,90,231,1)",,
"rgba(50,90,231,1)",,
‘rgba(50、90、231、1)’
],
边框宽度:1
}],
};
Chart.defaults.global.defaultFontColor='#151515';
var ctx=document.getElementById(“myChart”).getContext(“2d”);
var myChart=新图表(ctx{
键入:“行”,
数据:数据,
选项:{
responsive:true,//指示chart js做出良好的响应。
maintaintAspectRatio:false,//添加以防止全宽/全高的默认行为
比例:{
xAxes:[{
scaleLabel:{
显示:对,
标签字符串:“”
}
}],
雅克斯:[{
滴答声:{
回调:函数(值、索引、值){
if(数学下限(值)==值){
返回值;
}
}
}
}]
},
}
});
//$('#legend').html(myChart.generateLegend());
返回我的图表;
}
var xhttp=newXMLHttpRequest();
xhttp.onreadystatechange=函数(){
if(this.readyState==4&&this.status==200){
var json=json.parse(this.response);
log(json);
//将json标签映射回数组值
var labels=json.feed.entry.map(函数(e){
返回e.gsx$日期。$t;
});
//将json值映射回值数组
var values=json.feed.entry.map(函数(e){
返回e.gsx$followers.$t;
});
对于(i=0;i
您可以通过更改chart.config.options.scales.xAxes[0].ticks.max
和chart.config.options.scales.xAxes[0].ticks.min
值来实现这一点
上面的代码只需注意一件事:我注意到标签的时间正好相反。“今天”日期在右边,左边的值是未来的天数
我不太明白您是如何试图呈现数据的,但无论如何,这不会改变数据呈现的方式。在上面的代码片段中,有一个示例,其中有一个数字输入,它将一定数量的天添加到当前日期。因此,您只需将其转换为
今后几天:
今天
昨天
最后7天
让我们看看图表;//1.
设inp=document.getElementById(“天”);
inp.oninput=函数(){//3
const today=new Date().getTime()++inp.value*1000*60*60*24;//4
const newMax=新日期(今天).toISOString().split(“T”)[0]
console.log(“newMax”,newMax)
chart.config.options.scales.xAxes[0].ticks.max=newMax
chart.update();
};
函数构建图(标签、值、图表标题){
风险值数据={
标签:标签,
数据集:[{
标签:chartTitle,//为系列命名
数据:价值观,
背景颜色:[
“rgba(50,99,231,0.2)”,
“rgba(50,90231,0.2)”,
“rgba(50,90231,0.2)”,
“rgba(50,90231,0.2)”,
“rgba(50,90231,0.2)”,
‘rgba(50,90231,0.2)’
],
边框颜色:[
"rgba(50,90,231,1)",,
“rgba(54162235,1)”,
"rgba(50,90,231,1)",,
"rgba(50,90,231,1)",,
"rgba(50,90,231,1)",,
‘rgba(50、90、231、1)’
],
边框宽度:1
}],
};
Chart.defaults.global.defaultFontColor='#151515';
var ctx=document.getElementById(“myChart”).getContext(“2d”);
var myChart=新图表(ctx{
键入:“行”,
数据:数据,
选项:{
responsive:true,//指示chart js做出良好的响应。
maintaintAspectRatio:false,//添加以防止全宽/全高的默认行为
比例:{
xAxes:[{
scaleLabel:{
显示:对,
标签字符串:“”
},
}],
雅克斯:[{
滴答声:{
回调:函数(值、索引、值){
if(数学下限(值)==值){
雷图