私たちのチーム プロジェクトでは、ここでKendoUIコントロールを使用していますが、ウィンドウ チャートのサイズを縮小せずに最小化します。ブラウザのウィンドウを最大化/最小化しながら、チャートのサイズを増減する方法
質問する
7308 次
4 に答える
8
これを試してみてください:
<div id="example">
<div id="chart"></div>
</div>
<script>
// Chart Data Source
var exampleData = [
{ "FromDept": "ACT", "ToDept": "NSW", "Year": 2010, "Total": 101 },
{ "FromDept": "ACT", "ToDept": "NSW", "Year": 2011, "Total": 1001 },
{ "FromDept": "ACT", "ToDept": "NSW", "Year": 2012, "Total": 501 },
{ "FromDept": "ACT", "ToDept": "YNT", "Year": 2010, "Total": 501 }
];
// Function to create Chart
function createChart() {
// Creating kendo chart using exampleData
$("#chart").kendoChart({
title: {
text: "Sample"
},
dataSource:
{
data: exampleData,
},
legend: {
position: "bottom"
},
chartArea: {
background: ""
},
seriesDefaults: {
type: "line"
},
series: [{
field: "Total",
}],
valueAxis: {
labels: {
format: "${0}"
}
},
categoryAxis: {
field: "Year"
},
tooltip: {
visible: true,
format: "{0}%"
}
});
}
// Resize the chart whenever window is resized
$(window).resize(function () {
$("#chart svg").width(Number($(window).width()));
$("#chart svg").height(Number($(window).height()));
$("#chart").data("kendoChart").refresh();
});
// Document ready function
$(document).ready(function () {
// Initialize the chart with a delay to make sure
// the initial animation is visible
createChart();
// Initially
$("#chart svg").width(Number($(window).width()));
$("#chart svg").height(Number($(window).height()));
$("#chart").data("kendoChart").refresh();
});
</script>
于 2013-04-29T10:07:12.980 に答える
6
これを試して...
$(window).resize(function () {
$("#chart svg").width(Number($('.k-content').width()));
$("#chart svg").height(Number($('.k-content').height()));
$("#chart").data("kendoChart").refresh();
});
于 2013-04-26T11:33:57.333 に答える
5
ウィンドウのサイズ変更イベントにアタッチし、変更時にチャートの幅オプションをリセットできます。
window.onresize = function () {
var newWidth = window.innerWidth * .9 // 90% of screen width
var chart = $("#chart").data("kendoChart"); // get chart widget
chart.options.chartArea.width = newWidth; // set new width
chart.redraw(); // redraw the chart
};
于 2013-04-26T12:36:38.647 に答える
0
もう1点。また、再描画の前にアニメーションを無効にし、再描画後に有効にすることもできます
$(window).resize(function () {
$("#chart").data("kendoChart").options.transitions = false;
$("#chart").data("kendoChart").refresh();
$("#chart").data("kendoChart").options.transitions = true;
});
于 2016-06-14T09:58:02.903 に答える