0 votes
in SoSci Survey (dt.) by s210805 (170 points)

Irgendwie wird bei der automatischen Auswertung nicht mehr die erhobenen Daten angezeigt, sondern nur Referenzwerte. Die Balken für den eigenen Wert bleiben leer.
Hier ist mein PHP Code:

$extra = valueMean(array('PQ02_01', 'PQ02_06', 'PQ02_11', 'PQ02_16', 'PQ02_21', 'PQ02_26', 'PQ02_31', 'PQ02_36', 'PQ02_41', 'PQ02_46', 'PQ02_51', 'PQ02_56'));
$vertr = valueMean(array('PQ02_02', 'PQ02_07', 'PQ02_12', 'PQ02_17', 'PQ02_22', 'PQ02_27', 'PQ02_32', 'PQ02_37', 'PQ02_42', 'PQ02_47', 'PQ02_52', 'PQ02_57'));
$gewis = valueMean(array('PQ02_03', 'PQ02_08', 'PQ02_13', 'PQ02_18', 'PQ02_23', 'PQ02_28', 'PQ02_33', 'PQ02_38', 'PQ02_43', 'PQ02_48', 'PQ02_53', 'PQ02_58'));
$neuro = valueMean(array('PQ02_04', 'PQ02_09', 'PQ02_14', 'PQ02_19', 'PQ02_24', 'PQ02_29', 'PQ02_34', 'PQ02_39', 'PQ02_44', 'PQ02_49', 'PQ02_54', 'PQ02_59'));
$offen = valueMean(array('PQ02_05', 'PQ02_10', 'PQ02_15', 'PQ02_20', 'PQ02_25', 'PQ02_30', 'PQ02_35', 'PQ02_40', 'PQ02_45', 'PQ02_50', 'PQ02_55', 'PQ02_60'));


//runden
$extra = round($extra, $precision = 2, $mode = PHP_ROUND_HALF_UP);
$vertr = round($vertr, $precision = 2, $mode = PHP_ROUND_HALF_UP);
$gewis = round($gewis, $precision = 2, $mode = PHP_ROUND_HALF_UP);
$neuro = round($neuro, $precision = 2, $mode = PHP_ROUND_HALF_UP);
$offen = round($offen, $precision = 2, $mode = PHP_ROUND_HALF_UP);


//Labels
$labels1 = array('Extraversion', 'Verträglichkeit', 'Gewissenhaftigkeit', 'Neurotiszismus', 'Offenheit');
//Welche Daten nutzen
$ownData1 = array('extra', 'vertr','gewis', 'neuro', 'offen');
$refData1 = array (3.20, 3.72, 3.64, 2.74, 3.34);


//Plot
// Bibliothek jQuery verfügbar machen
library('jQuery');
// Textbaustein mit dem HTML-Code für das Chart einbinden
text('chart1', array(
  '%labels1%' => json_encode($labels1),
  '%ownData1%' => json_encode($ownData1),
  '%refData1%' => json_encode($refData1)
));

Und der HTML Code:

<p><br></p>
<!-- Container für das Diagramm -->
<div id="chart" style="height: 600px"></div>
 
<script type="text/javascript" src="../plugins/highcharts/highcharts.js"></script>
<script type="text/javascript">
<!--
 
$(function () {
    $('#chart').highcharts({
        chart: {
            type: 'bar'
        },
        title: {
            text: null
        },
        xAxis: {
            categories: %labels1%,
            title: {
                text: null
            }
        },
yAxis: {
        min: 1,
        max: 5
    },
        plotOptions: {
            bar: {
                dataLabels: {
                    enabled: true
                }
            }
        },
        legend: {
            layout: 'horizontal',
            align: 'center',
            verticalAlign: 'bottom',
            floating: false,
            borderWidth: 1,
            backgroundColor: ((Highcharts.theme && Highcharts.theme.legendBackgroundColor) || '#FFFFFF'),
            shadow: false
        },
        credits: {
            enabled: false
        },
        series: [{
            name: 'Durchschnitt',
            data: %refData1%,
            color: '#BBBBBB',
            dataLabels: {
                enabled: true
            }
        }, {
            name: 'Ihr Wert',
            data: %ownData1%,
            color: '#004C99',
            dataLabels: {
                enabled: true
            }
        }]
    });
 
});
 
// -->
</script>

Kann man in Code sehen, wo der Fehler liegt?
Danke schon mal :)

1 Answer

0 votes
by SoSci Survey (304k points)

Der Fehler liegt m.E. in dieser Zeile:

$ownData1 = array('extra', 'vertr','gewis', 'neuro', 'offen');

Hier erstellen Sie ein Array mit den Texten "extra", "vertr", u.s.w.

Mit den Texten, nicht mit den Werten. Und das Diagramm weiß dann natürlich nicht, was es für "extra" als Wert anzeigen soll. Versuchen Sie es mal hiermit:

$ownData1 = array($extra, $vertr, $gewis, $neuro, $offen);

Damit haben Sie die Werte im Array stehen, die Sie weiter oben in die Variablen abgelegt haben.

Willkommen im Online-Support von SoSci Survey.

Hier bekommen Sie schnelle und fundierte Antworten von anderen Projektleitern und direkt von SoSci Survey.

→ Eine Frage stellen


Welcome to the SoSci Survey online support.

Simply ask a question to quickly get answers from other professionals, and directly from SoSci Survey.

→ Ask a Question

...