// Left Sidebar Toggle Menu JS
$("#menu-toggle").click(function(e) {
e.preventDefault();
$("#wrapper").toggleClass("toggled");
$(window).trigger('resize');
});
//Morris Charts
jQuery.ready()
var data = [
{ y: '2014', a: 50, b: 90},
{ y: '2015', a: 65, b: 75},
{ y: '2016', a: 55, b: 50},
{ y: '2017', a: 75, b: 60},
{ y: '2018', a: 80, b: 65},
{ y: '2019', a: 90, b: 70},
{ y: '2020', a: 100, b: 75},
{ y: '2021', a: 115, b: 75},
{ y: '2022', a: 120, b: 85},
{ y: '2023', a: 145, b: 85},
{ y: '2024', a: 160, b: 95}
],
config = {
data: data,
xkey: 'y',
ykeys: ['a', 'b'],
labels: ['Total Income', 'Total Outcome'],
fillOpacity: 0.6,
hideHover: 'auto',
behaveLikeLine: true,
resize: true,
pointFillColors:['#ffffff'],
pointStrokeColors: ['black'],
lineColors:['gray','red']
};
config.element = 'area-chart';
Morris.Area(config);
config.element = 'line-chart';
Morris.Line(config);
config.element = 'bar-chart';
Morris.Bar(config);
config.element = 'stacked';
config.stacked = true;
Morris.Bar(config);
Morris.Donut({
element: 'pie-chart',
data: [
{label: "Friends", value: 30},
{label: "Allies", value: 15},
{label: "Enemies", value: 45},
{label: "Neutral", value: 10}
]
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script src="https://blackrockdigital.github.io/startbootstrap-simple-sidebar/js/bootstrap.min.js"></script>
<link href="http://blackrockdigital.github.io/startbootstrap-simple-sidebar/css/simple-sidebar.css" rel="stylesheet"/>
<script src='https://cdnjs.cloudflare.com/ajax/libs/raphael/2.1.2/raphael-min.js'></script>
<script src='https://cdnjs.cloudflare.com/ajax/libs/morris.js/0.5.0/morris.js'></script>
<link href="https://blackrockdigital.github.io/startbootstrap-simple-sidebar/css/bootstrap.min.css" rel="stylesheet"/>
<link rel='stylesheet prefetch' href='http://cdn.oesmith.co.uk/morris-0.5.1.css'>
<div class="container-fluid" id="wrapper">
<div id="sidebar-wrapper">
<aside class="sidebar">
<nav class="sidebar-nav">
</nav>
</aside>
</div>
<div id="page-content-wrapper">
<div class="container-fluid">
<div class="row">
<div class="col-md-8">
<div class="panel panel-success">
<div class="panel-heading">
<h3 class="panel-title">Sales</h3>
</div>
<div class="panel-body">
<div id="area-chart" ></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
I'm resizing the page by clicking 'menu toggle button', but when am doing so the Morris charts are not resized, I tried to trigger it, but its not working.
I added a line of code in my js $(window).trigger('resize');
but this dint worked. can any body help me? as I'm not aware of resize option in jQuery.
Thanks -Riot Zeast Captain
This worked for me.
$("#morrisArea").css("height","400")
I had the same problem, I could solve it like this:
html:
Make a variable and all Morris chart initialization you required but make sure not to include the following properties while initializing Morris chart
redraw: true
andresize: true
Here the jquery resize function magic which trigger when ever div resizes no need to trigger window resize.
Whenever DIV resize the Morris Chart automatically fit to it's parent DIV which is
col-sm-6
.This solution give you the size of chart according to the parent div size.
You don't need to add click function also.
This Worked For Me
HTML
JavaScript