Frage : PHP pchart Problem: Tortediagramm mit PIE_PERCENTAGE_LABEL

Hallo Experten,

1. Ich habe merkwürdige Probleme mit pchart. Wenn ich versuche, ein einfaches Tortediagramm mit dem Prozentsatz und den Aufklebern zu verursachen, die using das PIE_PERCENTAGE_LABEL Eigentum sichtbar sind, zeigt es nichts mehr, kein %numbers noch die Aufkleber. Während nur using das „PIE_PERCENTAGE“ Eigentum, es, aber nicht mit zusammen funktioniert. Warum konnte dieses sein?

2. Andere Probleme umfassen das Zerschmettern, wann immer ich versuche, eine Farbenpalette von einer externen Akte - mit einem rechten Weg zur Akte zu laden!

3. drittes Sache ist, das ist dort jede mögliche Weise, den runden umrandeten Viereckshintergrund von der Tortelegende zu entfernen?

Here ist der Code, den ich testing.


gewesen
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
6:
AddPoint (Reihe (30.20.20.20.20), „Serie1“);
	$DataSet->AddPoint (Reihe ($_SESSION [„Benutzer“] [„Rang“], „Feb“, „Mrz“, „Apr“, „Mai“), „Serie2“);
	$DataSet->AddAllSeries ();
	$DataSet->SetAbsciseLabelSerie („Serie2“);
	
	// initialisieren das Diagramm
	$Test = neues pChart (300.300);
	$Test->setColorPalette (0.178.31.98);
	$Test->setColorPalette (1.100.100.100);
	$Test->setColorPalette (2.150.150.150);
	$Test->setColorPalette (3.180.180.180);
	$Test->setColorPalette (4.200.200.200);
// $Test->loadColorPalette („Probe/softtones.txt“); //-ABBRÜCHE, wenn Sie uncommented. Der Weg ist korrekt.

	$Test->drawFilledRectangle (0.0.300.300.250.250.250);
	
	
	// schreiben den Titel
 	$Test->setFontProperties („fonts/HMH-font.ttf“, 15);
 	$Test->drawTitle (10.20, „Verkäufe pro Monat“, 100.100.100);
	
	//-abgehobener Betrag das Kreisdiagramm
	$Test->setFontProperties („Güsse/tahoma.ttf“, 8);
	$Test->drawFlatPieGraph ($DataSet->GetData (), $DataSet->GetDataDescription (), 120.150.80, PIE_PERCENTAGE_LABEL, 4);
	$Test->drawPieLegend (230.55, $DataSet->GetData (), $DataSet->GetDataDescription (), 250.250.250);
	$Test->Stroke ();
? >

Antwort : PHP pchart Problem: Tortediagramm mit PIE_PERCENTAGE_LABEL

1. PIE_PERCENTAGE_LABEL Arbeiten. Ich geprüft mit Version pChart v1.27 und (PHP 5.2.13) auf W32 (Windows Xp) und Linuxkern 2.6.27.29 (Opensuse 11.1). Beide bearbeiteten fein jedoch mich beachteten, dass Sie den kompletten Weg nicht zu Ihrem Gussfaltblatt spezifizierten (gerade wenn u mit dem innerhalb des pChart arbeiten, das Sie es tun müssen)
2. An Sie erinnern müssen die Linien entfernen, die auf ColorPalette beziehen, wenn Sie es von der Akte laden möchten. Oh, enthalten die Akte für softtones.txt sollte wie dieses aussehen:

0.178.31.98
1.100.100.100
2.150.150.150
3.180.180.180
4.200.200.200


3. Ja aber Sie müssen einen Parameter Funktion drawPieLegend innerhalb der Akte pChart/pChart.class hinzufügen, um das zu tun. Einfach gehen, ~1028 und $Border zu ihm zu zeichnen, also haben Sie:

Funktion drawPieLegend ($XPos, $YPos, $Data, $DataDescription, $R, $G, $B, $Border=TRUE)

diese Erklärungen dann finden:

$this->drawFilledRoundedRectangle ($XPos+1, $YPos+1, $XPos+$MaxWidth+1, $YPos+$MaxHeight+1,5, $R-30, $G-30, $B-30);     $this->drawFilledRoundedRectangle ($XPos, $YPos, $XPos+$MaxWidth, $YPos+$MaxHeight, 5, $R, $G, $B);

an Linie ~1054 (kann unterschiedlich sein),… und hinzufügen, wenn ($Border) so Sie die oben genannten Erklärungen haben, die innerhalb dieser Bedingung eingeschlossen:

wenn ($Border)
{
$this->drawFilledRoundedRectangle ($XPos+1, $YPos+1, $XPos+$MaxWidth+1, $YPos+$MaxHeight+1,5, $R-30, $G-30, $B-30);     $this->drawFilledRoundedRectangle ($XPos, $YPos, $XPos+$MaxWidth, $YPos+$MaxHeight, 5, $R, $G, $B);

}

falsch Ihnen drawPieLegend Erklärung in Ihrer Akte dann einfach hinzufügen:

$Test->drawPieLegend (230.55, $DataSet->GetData (), $DataSet->GetDataDescription (), 250.250.250, falsches);

Einen Blick an meinem Arbeitscode nehmen,…, das ich Änderungs-wenige Dinge habe:

- der Weg zum pChart ist jetzt in einer Variable
- error_reporting (E_ERROR); . Sicher gerade sein, dass es nur Störungen anzeigt (wenn Sie wünschen). Andernfalls überträgt es nicht das Bild.

Erinnern, dem Gussnamen das vorhergehende u zu überlassen verwendet. Ich änderte es coz, das ich es nicht habe.






1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
AddPoint (Reihe (30.20.20.20.20), „Serie1“);
	$DataSet->AddPoint (Reihe ($_SESSION [„Benutzer“] [„Rang“], „Feb“, „Mrz“, „Apr“, „Mai“), „Serie2“);
	$DataSet->AddAllSeries ();
	$DataSet->SetAbsciseLabelSerie („Serie2“);
	
	// initialisieren das Diagramm
	$Test = neues pChart (300.300);
	$Test->loadColorPalette („softtones.txt“);
	$Test->drawFilledRectangle (0.0.300.300.250.250.250);
	// schreiben den Titel
 	/*$Test->setFontProperties („fonts/HMH-font.ttf“, 15); *
    $Test->setFontProperties („$pathTopChart/Fonts/tahoma.ttf“, 15);    
 	$Test->drawTitle (10.20, „Verkäufe pro Monat“, 100.100.100);	
	//-abgehobener Betrag das Kreisdiagramm
	$Test->setFontProperties („$pathTopChart/Fonts/tahoma.ttf“, 8);
	$Test->drawFlatPieGraph ($DataSet->GetData (), $DataSet->GetDataDescription (), 120.150.80, PIE_PERCENTAGE_LABEL, 4);
	$Test->drawPieLegend (230.55, $DataSet->GetData (), $DataSet->GetDataDescription (), 250.250.250, falsches);
	$Test->Stroke ();
? >
Weitere Lösungen  
 
programming4us programming4us