gdy dane generuję tak jak poniżej - jest ok :
Kod
$chart = new open_flash_chart();
for( $i = 0; $i <32; $i++ )
{
$data [$i] = rand ( 0, 52);
}
for($lab=0; $lab<=32; $lab++){
$val = $data[$lab];
$d = new dot($val);
$etykiety[$lab] = $d -> tooltip('your text #val#'); // dodanie tooltipa powoduje, że na pół wykresu jest przysłonięte tłem w kolorze lini. Kto wie jak tego się pozbyć ? Testowałem to i stwierdziłem, że biblioteka jest skopana. Ale może macie jakieś rozwiązania?
}
$default_dot = new dot();
$default_dot->size(3)->colour('#DFC329')->tooltip( '#x_label#:#val#' );
$line_dot = new line();
$line_dot->set_default_dot_style($default_dot);
$line_dot->set_width( 2 );
$line_dot->set_colour( '#DFC329' );
$line_dot->set_values( $data );
$y = new y_axis();
$y->set_range( 0, 52, 32 );
$chart = new open_flash_chart();
$chart->set_title( new title( 'Advanced dot lines' ) );
$chart->set_y_axis( $y );
//
// here we add our data sets to the chart:
//
$chart->add_element( $line_dot );
echo $chart->toPrettyString();
for( $i = 0; $i <32; $i++ )
{
$data [$i] = rand ( 0, 52);
}
for($lab=0; $lab<=32; $lab++){
$val = $data[$lab];
$d = new dot($val);
$etykiety[$lab] = $d -> tooltip('your text #val#'); // dodanie tooltipa powoduje, że na pół wykresu jest przysłonięte tłem w kolorze lini. Kto wie jak tego się pozbyć ? Testowałem to i stwierdziłem, że biblioteka jest skopana. Ale może macie jakieś rozwiązania?
}
$default_dot = new dot();
$default_dot->size(3)->colour('#DFC329')->tooltip( '#x_label#:#val#' );
$line_dot = new line();
$line_dot->set_default_dot_style($default_dot);
$line_dot->set_width( 2 );
$line_dot->set_colour( '#DFC329' );
$line_dot->set_values( $data );
$y = new y_axis();
$y->set_range( 0, 52, 32 );
$chart = new open_flash_chart();
$chart->set_title( new title( 'Advanced dot lines' ) );
$chart->set_y_axis( $y );
//
// here we add our data sets to the chart:
//
$chart->add_element( $line_dot );
echo $chart->toPrettyString();
Gdy dane pochodzą z mojej tablicy z bazy danych to w tym momencie połowa wykresu przykrywana jest tłem.
Czym mogą różnić się dane wartości w tablicy , która wygenerowana jest losowo pomiędzy tablicą , która jest odczytana z bazy danych i obliczona ?
Jedyne co zmieniam to źródło danych i podmieniam tą pętlę.
Kod
for($lab=0; $lab<=count($dane); $lab++){
$val = $dane[$lab];
$d = new dot($val);
$etykiety[] = $d -> tooltip('nazwa etykiety #val#');
}
$val = $dane[$lab];
$d = new dot($val);
$etykiety[] = $d -> tooltip('nazwa etykiety #val#');
}
O to tablica $dane
Kod
Array
(
[0] => 31
[1] => 31
[2] => 5
[3] => 4
[4] => 5
[5] => 23
[6] => 3
[7] => 1
[8] => 15
[9] => 23
[10] => 45
[11] => 44
[12] => 45
[13] => 45
[14] => 45
[15] => 45
[16] => 45
[17] => 45
[18] => 45
[19] => 45
[20] => 45
[21] => 45
[22] => 45
[23] => 45
[24] => 45
[25] => 45
[26] => 47
[27] => 49
[28] => 46
[29] => 45
[30] => 45
[31] => 52
)
(
[0] => 31
[1] => 31
[2] => 5
[3] => 4
[4] => 5
[5] => 23
[6] => 3
[7] => 1
[8] => 15
[9] => 23
[10] => 45
[11] => 44
[12] => 45
[13] => 45
[14] => 45
[15] => 45
[16] => 45
[17] => 45
[18] => 45
[19] => 45
[20] => 45
[21] => 45
[22] => 45
[23] => 45
[24] => 45
[25] => 45
[26] => 47
[27] => 49
[28] => 46
[29] => 45
[30] => 45
[31] => 52
)
Nie wiem o co tu może chodzić. Gdy usunę tooltip i wstawiam dane np tak :
Kod
$line_dot->set_values( $data);
też jest ok. Magia czy jak ?
Ciąg dalszy. Nie wiem dlaczego ale zmiana typu zmiennych w tablicy z float na int rozwiązała problem
Ewidentnie problem powstaje w przypadku gdy liczba ma typ flotowy, a jest liczbą całkowitą.
Wykres ma z tym problem. Poprzednia wersja projektu nie miała takich problemów.