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