2013-12-17 51 views
0

我正在使用最新版本的JPGraph,我試圖改變graph_api文件以顯示組條形圖上的值。下面是一個代碼片段,以顯示我的改變(對於那些看API,這是在graph_group功能):JPGraph - 條形圖不顯示值

$tot = new BarPlot(array_values($total)); 
$tot->value->show(); 
$tot->value->SetFormat('%2d'); 
$tot->value->SetColor('black','black'); 
$tot->value->SetFont($t_graph_font,FS_BOLD,9); 
$tot->SetFillColor('lightblue'); 
$tot->SetWidth(0.7); 
$tot->SetLegend(lang_get('legend_total')); 
$graph->Add($tot); 

$p1 = new BarPlot(array_values($p_metrics['open'])); 
$p1->SetFillColor('yellow'); 
$p1->SetWidth(1); 
$p1->SetLegend(plugin_lang_get('legend_opened')); 
$p1->value->show(); 
$p1->value->SetColor('white','white'); 
$p1->value->SetFormat('%2d'); 
$p1->value->SetFont($t_graph_font,FS_BOLD,8); 
$p1->SetFillColor('red'); 
$p1->SetLegend(lang_get('legend_still_open')); 

$p2 = new BarPlot(array_values($p_metrics['closed'])); 
$p2->SetFillColor('blue'); 
$p2->SetWidth(1); 
$p2->SetLegend(plugin_lang_get('legend_closed')); 
$p2->value->show(); 
$p2->value->SetFormat('%2d'); 
$p2->value->SetColor('black','black'); 
$p2->SetFillColor('forestgreen'); 
$p2->SetWidth(0.5); 
$p2->SetLegend(lang_get('legend_closed')); 

$gbplot = new GroupBarPlot(array($p1, $p2)); 
$gbplot->value->show(); 

$graph->Add($gbplot); 

根據API,使用「值 - >展()」應該顯示的值。當我添加最後一行時(對於$ gbplot),該圖不顯示。如果我註釋掉它,圖表將顯示sans值。我錯過了什麼?

+0

您是否需要使用'$ graph-> Add()'將圖形條(或GroupBarPlot)添加到圖中? –

+0

對不起,我沒有發佈那麼遠。我將它添加到圖中。我正在更新該片段來解決這個問題。 – LNendza

回答

2

顯然這個問題必須解決這個事實,即JPGraph不會讓你在默認情況下覆蓋它的主題。通過將主題設置爲null,我發現允許我進行更廣泛的更改。國際海事組織,這是一個非常愚蠢的設置,但c'est la vie。下面是我的圖形清晰度貌似現在:

$graph = new Graph($p_graph_width, $p_graph_height); 
$graph->SetScale('textlin'); 
$graph->graph_theme = null; 
$graph->SetFrame(false); 

的「graph_theme」線是由新增加的是固定的問題對我來說。我希望這將在未來有所幫助,因爲它沒有在API中明確說明。