Php Pchart在X轴上打印双值

Php Pchart在X轴上打印双值,php,pchart,Php,Pchart,温柔一点 使用以下代码在RPI上使用pchart打印图表会导致在X轴上双重打印值 我的首选结果是单x轴值稍微旋转,但无论我在下面的代码中做了什么更改,都不会给出好的结果 谢谢你的帮助 莫里斯 <?php ini_set('display_errors', 'On'); error_reporting(E_ALL | E_STRICT); include("class/pDraw.class.php"); include("class/pImage.class.php"); includ

温柔一点

使用以下代码在RPI上使用pchart打印图表会导致在X轴上双重打印值

我的首选结果是单x轴值稍微旋转,但无论我在下面的代码中做了什么更改,都不会给出好的结果

谢谢你的帮助

莫里斯

<?php

ini_set('display_errors', 'On');
error_reporting(E_ALL | E_STRICT);

include("class/pDraw.class.php");
include("class/pImage.class.php");
include("class/pData.class.php");

$db = new PDO("sqlite:/home/pi/sensor.db");

$MyData = new pData();  

$tijd=""; 
$lucht="";

$result = $db->query('SELECT tijd, lucht FROM waarden WHERE lucht  > 40');
foreach($result as $row)
{
  $tijd[]   = $row["tijd"];
  $lucht[] = $row["lucht"];
}

$MyData->addPoints($lucht,"lucht");
$MyData->setSerieOnAxis("lucht", 0);
$MyData->setAxisName(0,"lucht");
$MyData->setAxisUnit(0,"%");

$MyData->addPoints($tijd,"tijd");
$MyData->setSerieDescription("tijd","Tijden");
$MyData->setAbscissa("tijd");

$myPicture = new pImage(800,330,$MyData);
$myPicture->setFontProperties(array("FontName"=>"fonts/Forgotte.ttf","FontSize"=>11));
$myPicture->setGraphArea(60,40,740,290);
$myPicture->drawScale(array("AutoAxisLabels"=>FALSE,"RemoveXAxis"=>FALSE)); 
$myPicture->drawLineChart();

//rotate the xaxis values 
$myPicture->drawScale(array("DrawSubTicks"=>False, "LabelRotation"=>20));

$myPicture->autoOutput("mypic.png");
$db = null;
?>

发现了我自己的错误

看来我的双重指示

$myPicture->drawScale(array("
在和处的初始化中,处理得不太好,导致出现双Xaxis标签

正确的代码:

<?php

ini_set('display_errors', 'On');
error_reporting(E_ALL | E_STRICT);

include("class/pDraw.class.php");
include("class/pImage.class.php");
include("class/pData.class.php");

$db = new PDO("sqlite:/home/pi/sensor.db");

$MyData = new pData();  

$tijd=""; 
$lucht="";

$result = $db->query('SELECT tijd, lucht FROM waarden WHERE lucht  > 40');
foreach($result as $row)
{
  $tijd[]   = $row["tijd"];
  $lucht[] = $row["lucht"];
}

$MyData->addPoints($lucht,"lucht");
$MyData->setSerieOnAxis("lucht", 0);
$MyData->setAxisName(0,"lucht");
$MyData->setAxisUnit(0,"%");

$MyData->addPoints($tijd,"tijd");
$MyData->setAbscissa("tijd");
$MyData->setAbscissaName("Time of Reading");

$myPicture = new pImage(800,330,$MyData);
$myPicture->setFontProperties(array("FontName"=>"fonts/Forgotte.ttf","FontSize"=>11));
$myPicture->setGraphArea(60,40,740,290);

//Remove line below to avoid double Xaxis values
//$myPicture->drawScale(array("AutoAxisLabels"=>FALSE,"RemoveXAxis"=>FALSE)); 
$myPicture->drawScale(array("DrawSubTicks"=>False, "LabelRotation"=>20));
$myPicture->drawLineChart();
$myPicture->autoOutput("mypic.png");
$db = null;
?>

发现了我自己的错误

看来我的双重指示

$myPicture->drawScale(array("
在和处的初始化中,处理得不太好,导致出现双Xaxis标签

正确的代码:

<?php

ini_set('display_errors', 'On');
error_reporting(E_ALL | E_STRICT);

include("class/pDraw.class.php");
include("class/pImage.class.php");
include("class/pData.class.php");

$db = new PDO("sqlite:/home/pi/sensor.db");

$MyData = new pData();  

$tijd=""; 
$lucht="";

$result = $db->query('SELECT tijd, lucht FROM waarden WHERE lucht  > 40');
foreach($result as $row)
{
  $tijd[]   = $row["tijd"];
  $lucht[] = $row["lucht"];
}

$MyData->addPoints($lucht,"lucht");
$MyData->setSerieOnAxis("lucht", 0);
$MyData->setAxisName(0,"lucht");
$MyData->setAxisUnit(0,"%");

$MyData->addPoints($tijd,"tijd");
$MyData->setAbscissa("tijd");
$MyData->setAbscissaName("Time of Reading");

$myPicture = new pImage(800,330,$MyData);
$myPicture->setFontProperties(array("FontName"=>"fonts/Forgotte.ttf","FontSize"=>11));
$myPicture->setGraphArea(60,40,740,290);

//Remove line below to avoid double Xaxis values
//$myPicture->drawScale(array("AutoAxisLabels"=>FALSE,"RemoveXAxis"=>FALSE)); 
$myPicture->drawScale(array("DrawSubTicks"=>False, "LabelRotation"=>20));
$myPicture->drawLineChart();
$myPicture->autoOutput("mypic.png");
$db = null;
?>