Javascript 如何在Flot中使用Json绘制图形?
我用php在客户端显示条形图、折线图。我尝试将Json传递给plot graph,正如他们在示例中提到的那样 我像这样包装JsonJavascript 如何在Flot中使用Json绘制图形?,javascript,ajax,flot,Javascript,Ajax,Flot,我用php在客户端显示条形图、折线图。我尝试将Json传递给plot graph,正如他们在示例中提到的那样 我像这样包装Json [{"label":"63f9311f-5d33-66ad-dcc1-353054485572","bars":{"show":true},"data": [[-170.44530493708,270.44530493708]]},{"label":"8f6dcf4a-b20c-8059-1410-353054486037","bars":{"sho
[{"label":"63f9311f-5d33-66ad-dcc1-353054485572","bars":{"show":true},"data": [[-170.44530493708,270.44530493708]]},{"label":"8f6dcf4a-b20c-8059-1410-353054486037","bars":{"show":true},"data":[[-791.50048402711,891.50048402711]]},{"label":"c2b4cf75-3e0b-f9ff-722e-353054485803","bars":{"show":true},"data":[[-1280.0484027106,1380.0484027106]]},{"label":"eb963e23-75cd-6131-867a-353054485894","bars":{"show":true},"data":[[-1487.2604065828,1587.2604065828]]},{"label":"ef413106-d5be-593b-1cda-353054485719","bars":{"show":true},"data":[[-1940.9583736689,2040.9583736689]]}]
但这张图并没有绘制出来
$.ajax({
url: '../c/By_Machine_Controller.php', //the script to call to get data
data: "", //you can insert url argumnets here to pass to api.php
//for example "id=5&parent=6"
dataType: 'json', //data format
success: function(data) //on recieve of reply
{
var Up = [];
var Down = [];
Up = data[0]; //get Up
Down = data[1]; //get Down
//alert(Up);
$.plot($("#placeholder"), [ Up , Down ]);
}
});
这与Json有关,还是我的JS错了。因为,我是新来弗洛特的,我没有任何线索。有人能帮我吗
我输入的答案很好,但在本例中,我将JSON写入临时文件并访问它,但我的要求是
我计算localhost中MODEL文件夹中flot的值,并将其作为关联数组传递,然后在CONTROLLER文件夹中将其编码为JSON。现在我需要访问localhost中的JSON-in-VIEW文件夹
控制器代码:
$json = json_encode($allData);
$myFile = "ReasonByTime.txt";
$fh = fopen($myFile, 'w') or die("can't open file");
$stringData = "Bobby Bopper\n";
fwrite($fh, $json);
fclose($fh);
但是,当我通过JS访问视图中控制器的$json时(如下图所示),它不起作用。我用谷歌搜索了一下,但没能把它修好。你能帮我解决这个问题吗
查看JS代码以从控制器访问JSON
$(document).ready(function () {
//var dataurl = '../c/By_Machine_Controller.php';
function onDataReceived(data) {
$.plot(placeholder, data, options);
}
$.ajax({
type: "GET",
url: '../c/By_Machine_Controller.php',
data: 'data',
dataType: 'json',
success: function(data) {
alert(data);
}
});
});
看起来不错,如果需要,您可以添加
barWidth
:
或附示例的页面:
Flot库填充所有空间,这就是为什么会得到这样的结果:看起来不错,如果需要,可以添加
barWidth
:
或附示例的页面:
Flot库填满了所有空间,这就是为什么您会得到这样的结果:我已经做了一些测试,很简单
$.plot($("#placeholder"), data);
对我有效。我已经做了一些测试,很简单
$.plot($("#placeholder"), data);
<script language="javascript" type="text/javascript">
$(document).ready(function(){
$.getJSON('ReasonByTime.txt', function(json) {
$.plot($("#placeholder"),json, {bars: { show: true, barWidth:0.2},xaxis: {ticks: json.ticks}});
});
对我有用。这对我有用
<script language="javascript" type="text/javascript">
$(document).ready(function(){
$.getJSON('ReasonByTime.txt', function(json) {
$.plot($("#placeholder"),json, {bars: { show: true, barWidth:0.2},xaxis: {ticks: json.ticks}});
});
$(文档).ready(函数(){
$.getJSON('ReasonByTime.txt',函数(json){
$.plot($(“#占位符”)、json、{bar:{show:true、barWidth:0.2}、xaxis:{ticks:json.ticks});
});
}))
这对我很有用
<script language="javascript" type="text/javascript">
$(document).ready(function(){
$.getJSON('ReasonByTime.txt', function(json) {
$.plot($("#placeholder"),json, {bars: { show: true, barWidth:0.2},xaxis: {ticks: json.ticks}});
});
$(文档).ready(函数(){
$.getJSON('ReasonByTime.txt',函数(json){
$.plot($(“#占位符”)、json、{bar:{show:true、barWidth:0.2}、xaxis:{ticks:json.ticks});
});
}))
如果我直接提供数据,对我来说效果很好。但是,如何从Json中提取数据以绘制图形。@Allen我错过了一些东西,但是这个()对我有用,或者你在谈论其他东西。问题是,它是一个Json/关联数组,它是一个动态值,我不能直接给出这样的值`var data=[{“label”:“63f9311f-5d33-66ad-dcc1-353054485572”,“bar”:{“show”:true},“data”:[[-170.44530493708270.44530493708],{“标签”:“8f6dcf4a-b20c-8059-1410-353054486037”,“条”:{“显示”:真},“数据”:[-791.50048402711891.50048402711],{“标签”:“c2b4cf75-3e0b-f9ff-722e-35305448803”,“条”:{“显示”:真},“数据”:[-1280.04840271061380.0484006]}`我应该使用Json对象。我需要像这样的东西
var data=$Json
@Allen现在我明白了,如果服务器返回Json,你可以在这个函数中使用它success:function(data)
如果我直接提供数据,它对我来说工作正常。但是,如何从Json中提取数据来绘制图形。@Allen我错过了一些东西,但是这个()对我有用或者你在谈论其他东西问题是,它是一个Json/关联数组,它是一个动态值,我不能直接给出这样的值`var data=[{“label”:“63f9311f-5d33-66ad-dcc1-353054485572”,“bar:{“show”:true},“data:[-170.44530493708270.44530493708]},{“label:”8f6dcf4a-b20c-8059-1410-3530544486037“,“条形图”:{“显示”:真},“数据”:[[-791.50048402711891.50048402711]},{“标签”:“c2b4cf75-3e0b-f9ff-722e-353054485803”,“条形图”:{“显示”:真},“数据”:[-1280.04840271061380.0484027106]}`我应该使用Json对象。我需要像这样的东西var data=$Json
@Allen现在我明白了,如果服务器返回Json,您可以在这个函数中使用它success:function(data)
@thuithasumanadasa:code span(像这样
)不用于强调或突出显示:它们只用于句子中的代码。请不要将它们用于JSON
或JavaScript
之类的词,但变量名之类的东西是可以的。@ThusithaSumanadasa:code span(像这样
)不用于强调或突出显示:它们只用于句子中的代码。请不要将它们用于JSON
或JavaScript
之类的词,但变量名之类的东西也可以。