我希望声明一个可以在数组中生成一系列有序值的函数,例如可以在图形上绘制。我有两个变量:
var xAxis = 1;
var yFunction = 4*(xAxis^xAxis) + 12(xAxis) + 20;
所以,基本上这会使用 Flot 来 JQuery 在图表上绘制二次方程式,但我希望能够使用一个while循环来在每次迭代时将xAxis
变量递增1,然后计算该迭代上yFunction
的{{1}}值。我不确定如何将xAxis
与yFunction
的现值挂钩。
此外,该函数必须为每次迭代生成xAxis
和yFunction的每个值,然后将这些值存储到以下格式的数组中:
xAxis
从那里,我可以绘制图表。
如果有人知道我会怎么做,我将不胜感激。我查看过各种表格,看不出明显的解决方案。
答案 0 :(得分:2)
您的出发点是将yFunction
定义为函数:
var yFunction = function(x) {
return 4 * Math.pow(x, x) + 12 * x + 20;
}
// assuming that by x^x you meant X to the power of X.
然后你的循环可能是这样的:
var graphArray = [];
for(var x = 1; x <= 4; x++) {
graphArray.push([x, yFunction(x)]);
}
答案 1 :(得分:0)
function y(x) { //handle y as function as learned in school
return 4 * (Math.pow(x,x)) + 12 * x + 20;
}
var objValueTable = {}, //object to store data into
targetValue = 10; //value to iterate to
for(var x = 1; x != targetValue + 1; x++) {
objValueTable[x] = y(x); //store value of y at point x in object
}
应该运作良好。见example via jsfiddle。 targetValue是函数应该执行的迭代次数。