Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> pchart - kilka wykresów XY
nospor
post 25.07.2011, 13:43:33
Post #1





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Hejka, używam pChart w wersji 1 i robię wykresy XY.
Dla jedego wykresu nie ma problemu:
  1. $DataSet->AddPoint(array(2,4,5,1),"Serie2");
  2. $DataSet->AddPoint(array(1,2,3,6),"Serie3");
  3.  
  4. $DataSet->AddSerie("Serie2");
  5. $DataSet->AddSerie("Serie3");
  6.  
  7. // Initialise the graph
  8. $Test = new pChart(700,290);
  9. //........
  10. $Test->drawXYScale($DataSet->GetData(),$DataSet->GetDataDescription(),"Serie2","Serie3",213,217,221);
  11. $Test->drawGrid(4,TRUE,230,230,230,50);
  12. //....
  13. $Test->drawXYGraph($DataSet->GetData(),$DataSet->GetDataDescription(),"Serie2","Serie3",0);
  14. $Test->drawLegend(175,35,$DataSet->GetDataDescription(),255,255,255);
  15. //....

Problem pojawia się gdy chcę dodać kolejne linie na tym samym wykresie

  1. $DataSet->AddPoint(array(2,4,5,1),"Serie2");
  2. $DataSet->AddPoint(array(1,2,3,6),"Serie3");
  3. $DataSet->AddPoint(array(1,2,3,40),"Serie4");
  4. $DataSet->AddPoint(array(1,2,4,50),"Serie5");
  5.  
  6. $DataSet->AddSerie("Serie2");
  7. $DataSet->AddSerie("Serie3");
  8. $DataSet->AddSerie("Serie4");
  9. $DataSet->AddSerie("Serie5");
  10.  
  11. $Test = new pChart(700,290);
  12. //!!!!PROBLEM
  13. $Test->drawXYScale($DataSet->GetData(),$DataSet->GetDataDescription(),"Serie2","Serie3",213,217,221);
  14. $Test->drawGrid(4,TRUE,230,230,230,50);
  15. //!!!!PROBLEM
  16. $Test->drawXYGraph($DataSet->GetData(),$DataSet->GetDataDescription(),"Serie2","Serie3",0);
  17. $Test->drawXYGraph($DataSet->GetData(),$DataSet->GetDataDescription(),"Serie4","Serie5",0);
  18.  
  19. $Test->drawLegend(175,35,$DataSet->GetDataDescription(),255,255,255);


Pierwszy problem:
$Test->drawXYScale($DataSet->GetData(),$DataSet->GetDataDescription(),"Serie2","Serie3",213,217,221);
Rysując skalę podaje się tylko serię dla pierwszej linii. Nie można w skali uwzględnić więcej niż jednej linii.

Drugi problem
$Test->drawXYGraph($DataSet->GetData(),$DataSet->GetDataDescription(),"Serie4","Serie5",0);
To mi rysuje drugą linię, ale gdy jest poza skalą pierwszej linii to oczywiście będzie nie widoczna.
Dodatkowo rysuje mi w tym samym kolorze co pierwszą linię. Mogę od biedy ostatni parametr dać 1 - wówczas zmieni kolor, ale tu wchodzimy na teren trzeciego problemu

Trzeci problem
NIestety legenda nie uwzględnia linii jako całości. Linia składa się z dwóch serii. Dla jednej więc linii, pojawiają się dwa pisy w legendzie. Dla dwóch linii pojawiają się 4 wpisy w legedzie i oczywiście w żaden sposób nie powiązane z kolorami linii.

Jakieś rozwiązanie? Da się tu narysować więcej niż jedną linię XY?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 08:52