innerhalb mein Controller ich etwas tun, wie dieseLooping JSON-Daten in Morris.js und Laravel 5
$responseCounts = json_encode(array_count_values($countArray));
dd($responseCounts);
Das gibt das folgende
"{"Answer 4":6,"Answer 2":25,"Answer 3":19,"Answer 1":20}"
Jetzt habe ich diese Daten zu verwenden, ich versuche, eine erstellen Morris.js Diagramm. Innerhalb von Javascript, ich
<script>
$(function() {
var data = '{{ $responseCounts }}';
data = data.replace(/"/ig,'"');
data = JSON.parse(data)
console.log(data);
});
</script>
Als ich gibt die Daten an die Konsole I
Object { Answer 4=6, Answer 2=25, Answer 3=19, more...}
sehen Jetzt bin ich auf dem Morris Teil, bisher habe ich
Morris.Bar({
element: 'chart',
data: [
{ Answers: 'A', Count: 3 },
{ Answers: 'B', Count: 10 },
{ Answers: 'C', Count: 5 },
{ Answers: 'D', Count: 17 }
],
xkey: 'Answers',
ykeys: ['Count'],
labels: ['Answers']
});
Offensichtlich gebe ich im Moment gefälschte Daten aus. Ich versuche jetzt, meine Datenvariable zu verwenden. Der linke Teil des Objekts repräsentiert eine Spalte auf der X-Achse. Der zweite Teil ist die Anzahl für jede Spalte. Also möchte ich im Wesentlichen zeigen, dass Antwort 1 20, Antwort 2 25 usw. hat.
Wie könnte ich darüber gehen?
Dank
Danke, das ist fantastisch. Eine Frage, die ich habe, der key.split beruht auf der Antwort beginnend mit Antwort. Wenn die Antwort etwas anderes ist, wird sie als undefiniert angezeigt. Gibt es eine Möglichkeit, mit einer Antwort umzugehen? –
@kate_hudson Gibt es einen gemeinsamen Nenner in was der 'Schlüssel' sein wird? Wie wird eine Ganzzahl immer in dieser Zeichenfolge vorhanden sein? – Ohgodwhy
Nein, die Antwort könnte irgendetwas sein –