在一个正常运行的JS的末尾,我有三个 x - 和 y -coordinates,return [theta_plot, omega_plot, e_plot];
数组,我想发送给Flot用于绘图:
function myPlot(theta_plot, omega_plot, e_plot) {
"use strict";
function doPlot(position) {
$.plot("#placeholder", [
{
data: theta_plot,
label: "Angle (rad)",
yaxis: 1,
color: "red"
},
{
data: omega_plot,
label: "Angular Velocity (rad/sec)",
yaxis: 2,
color: "green"
},
{
data: e_plot,
label: "Energy (J)",
yaxis: 3,
color: "blue"
}
],
{
yaxes: [
{
font: { color: "red" }
},
{
font: { color: "green" }
},
{
font: { color: "blue" }
},
{ alignTicksWithAxis: position === "left" ? 1 : null }
],
legend: { position: "nw" }
}
);
}
doPlot("left");
}
外部function
是我最近尝试将这些数组传递给Flot,但没有成功。内部function
显然是Flot。将doPlot
放在我的JS中会产生所需的结果,尽管JSLint抱怨它们没有被定义,因为它应该如此。但是,出于组织目的,我希望在我的HTML中doPlot
。问题:如何让doPlot
知道我的阵列?
答案 0 :(得分:2)
只需替换
function doPlot(position) {
与
function doPlot(theta_plot, omega_plot, e_plot, position) {
并在不使用myPlot()
函数的情况下直接调用新函数。