Как передать массив Ruby в Javascript, чтобы сделать линейный график
Я пытаюсь создать веб-страницу для отображения линейных графиков в моем приложении Ruby on Rails 2.3.14. Я нашел инструмент под названием JS Charts, который позволяет мне создавать красивые графики с использованием Javascript, но у меня возникают проблемы с отправкой ему необходимых данных. Вот способ сделать статический линейный график:
<code><script type="text/javascript"> var myData = new Array([1, 395], [2, 244], [3, 223], [4, 210], [5, 238], [6, 223], [7, 275], [8, 31]); var myChart = new JSChart('chartcontainer', 'line'); myChart.setDataArray(myData); myChart.draw(); </script> </code>
Я поместил этот код в stats.html.erb, и он появился. Однако мне нужно, чтобы он отображал данные линейного графика, которые я им предоставляю. В контроллере создается двухмерный массив:
<code>>> @a => [[1, 395], [2, 244], [3, 223], [4, 210], [5, 238], [6, 223], [7, 275], [8, 31]] </code>
Я должен иметь возможность использовать эту переменную в представлении, и установитьvar myData
к этому, с чем-то вроде:
<code>var myData = "<%= @a %>"; </code>
Я пробовал другие вещи, такие как:
<code>var myData = JSON.parse( "<%= @a.to_json %>" ); </code>
но ничего не работает. Что я могу сделать?
РЕДАКТИРОВАТЬ:
Возникла проблема с массивом, который контроллер передал в представление (@a), которое было пустым. Я был в состоянии использовать:
<code>var myData = JSON.parse( "<%= @a.to_json %>" ); </code>
чтобы отобразить линейный график с правильными данными, передаваемыми в представление.