我正在尝试从文本文件中读取数据,然后使用 PHPplot 绘制它。文本文件如下所示:
0 24
1 28
2 30
3 35
4 40
我正在尝试将数据转换为:
array(array(0,24),array(1,28),array(2,30),array(3,35),array(4,40))
我在php中的代码是这样的
$file = fopen("data2.txt", "r");;
while (!feof($file)) {
$line_of_text .= fgets($file);
}
$members = explode("\n", $line_of_text);
fclose($file);
for ($j=0; $j<=10; $j++)
{
$parts[$j]=explode(" ", $members[$j]);
}
# plot
require_once 'phplot.php';
for ($x = 0; $x <= 5; $x += 1)
$data[] = array('', $parts[$x][0], $parts[$x][1]);
$plot = new PHPlot(800, 600);
$plot->SetPrintImage(False); // No automatic output
$plot->SetImageBorderType('plain');
$plot->SetPlotType('lines');
$plot->SetDataType('data-data');
$plot->SetDataValues($data);
$plot->SetPlotAreaWorld(0, 0, 10, 40);
$plot->SetDrawYGrid(True);
$plot->DrawGraph();
问题在于:
$data[] = array('', $parts[$x][0], $parts[$x][1]);
它不会绘制 $parts[$x][1] 数字。当我说 print $parts[$x][1] values 它会在浏览器上打印它,但不要绘制它。有趣的是,当我要求它进行绘图时
$data[] = array('', $parts[$x][0], $parts[$x][1]);
这次是剧情!!
var_dump($parts) 给出:
array(11) { [0]=> array(2) { [0]=> string(1) "0" [1]=> string(3) "24 " } [1]=> array(2) { [0]=> string(1) "1" [1]=> string(3) "28 " } [2]=> array(2) { [0]=> string(1) "2" [1]=> string(3) "30 " } [3]=> array(2) { [0]=> string(1) "3" [1]=> string(3) "35 " } [4]=> array(2) { [0]=> string(1) "4" [1]=> string(2) "40" } [5]=> array(1) { [0]=> string(0) "" } [6]=> array(1) { [0]=> string(0) "" } [7]=> array(1) { [0]=> string(0) "" } [8]=> array(1) { [0]=> string(0) "" } [9]=> array(1) { [0]=> string(0) "" } [10]=> array(1) { [0]=> string(0) "" } }
var_dump($data) 也给出了:
array(5) { [0]=> array(3) { [0]=> string(0) "" [1]=> int(0) [2]=> string(3) "24 " } [1]=> array(3) { [0]=> string(0) "" [1]=> int(1) [2]=> string(3) "28 " } [2]=> array(3) { [0]=> string(0) "" [1]=> int(2) [2]=> string(3) "30 " } [3]=> array(3) { [0]=> string(0) "" [1]=> int(3) [2]=> string(3) "35 " } [4]=> array(3) { [0]=> string(0) "" [1]=> int(4) [2]=> string(2) "40" } }
请帮助我非常感谢