Управление диаграммами с помощью MVC и chart.js
Я использую chart.js для отображения диаграммы в панели мониторинга моего приложения MVC.
теперь я связываю данные через jquery. Есть ли возможность привязать данные от контроллера.
function IncomeExpenseChart(aData, from) { if (from == "s") { $('#incomeExpense strong').html("Income-Expense: "+start+" - "+end); } document.getElementById("expensechart").innerHTML = ' '; document.getElementById("expensechart").innerHTML = ''; $('.netincome').html(aData.Net); $('.expense').html(aData.Expense); $('.income').html(aData.Income); var aLabels = aData.data.Label; var aDatasets1 = aData.data.X; var aDatasets2 = aData.data.Y; // var aDatasets3 = aData[3]; //var aDatasets4 = aData[4]; // Get context with jQuery - using jQuery's .get() method. var salesChartCanvas = $("#salesChart").get(0).getContext("2d"); // This will get the first returned node in the jQuery collection. var salesChart = new Chart(salesChartCanvas); var data = { labels: aLabels, datasets: [ { label: "Income", fillColor: "rgb(210, 214, 222)", strokeColor: "rgb(210, 214, 222)", pointColor: "rgb(210, 214, 222)", pointStrokeColor: "#c1c7d1", pointHighlightFill: "#fff", pointHighlightStroke: "rgb(220,220,220)", data: aDatasets1 }, { label: "Expense", fillColor: "rgba(60,141,188,0.9)", strokeColor: "rgba(60,141,188,0.8)", pointColor: "#3b8bba", pointStrokeColor: "rgba(60,141,188,1)", pointHighlightFill: "#fff", pointHighlightStroke: "rgba(60,141,188,1)", data: aDatasets2 } ] }; //Create the line chart salesChart.Line(data, { responsive: true, animation: true, barValueSpacing: 5, barDatasetSpacing: 1, tooltipFillColor: "rgba(0,0,0,0.8)", multiTooltipTemplate: " - ", pointDot: false, //Number - Radius of each point dot in pixels pointDotRadius: 4, showScale: true, //Boolean - Whether grid lines are shown across the chart scaleShowGridLines: false, //String - Colour of the grid lines scaleGridLineColor: "rgba(0,0,0,.05)", //Number - Width of the grid lines scaleGridLineWidth: 1, //Boolean - Whether to show horizontal lines (except X axis) scaleShowHorizontalLines: true, //Boolean - Whether to show vertical lines (except Y axis) scaleShowVerticalLines: true, }); //--------------------------- //- END MONTHLY SALES CHART - //--------------------------- }
Что я уже пробовал:
я видел некоторые элементы управления диаграммой mvc, которые создают диаграмму и преобразуют ее в изображение и нажимают на div. я хочу сделать то же самое с помощью chart.js
// Save the chart to a MemoryStream var imgStream = new MemoryStream(); salesChart.SaveImage(imgStream, ChartImageFormat.Png); imgStream.Seek(0, SeekOrigin.Begin); // Return the contents of the Stream to the client return File(imgStream, "image/png");