public String monthData() {
IP_DT0023 ip_DT0023 = new IP_DT0023();
ip_DT0023.setDateType(0);
ip_DT0023.setQueryMonth(queryDate);
SessionStruct session = (SessionStruct) ActionContext.getContext()
.getSession().get(CommDataInterface.SESSIONSTRUCT);
ip_DT0023.setStationId(session.getSelectedStation().getStationId());
OPFather opFather = TradeCaptain.getInstance().doTrade(ip_DT0023);
StringBuffer monthStringBuffer = new StringBuffer();
if (opFather.isSucceed()) {
OP_DT0023 op_DT0023 = (OP_DT0023) opFather;
listInverterMonth = op_DT0023.getListMonth();
monthStringBuffer.append("[");
if (listInverterMonth == null || listInverterMonth.size() == 0) {
monthStringBuffer.append("]");
} else {
boolean isLastData = false;
for (int i = 0; i < listInverterMonth.size(); i++) {
InverterDataRecord4Day inverterMonth = listInverterMonth
.get(i);
isLastData = i == (listInverterMonth.size() - 1);
monthStringBuffer.append(FormatUtil
.formatPout(inverterMonth.getValue()));
if (isLastData) {
monthStringBuffer.append("]");
} else {
monthStringBuffer.append(",");
}
}
}
Calendar cal = new GregorianCalendar();
SimpleDateFormat monthFormat = new SimpleDateFormat("yyyy-MM");
try {
String time = new java.sql.Date(new java.util.Date().getTime())
.toString();
cal.setTime(monthFormat.parse(time));
} catch (ParseException e) {
e.printStackTrace();
}
int monthDay = cal.getActualMaximum(Calendar.DAY_OF_MONTH);
StringBuffer dayStringBuffer = new StringBuffer();
boolean isLastData = false;
dayStringBuffer.append("[");
for (int i = 0; i < monthDay; i++) {
dayStringBuffer.append(i + 1);
isLastData = (i == monthDay - 1);
if (isLastData) {
dayStringBuffer.append("]");
} else {
dayStringBuffer.append(",");
}
}
ActionContext.getContext().put("monthData", monthStringBuffer.toString());
ActionContext.getContext()
.put("dayNum", dayStringBuffer.toString());
return "monthData";
}
return "errorPower";
}
<script type="text/javascript">
var chart;
$(document).ready(
function() {
chart = new Highcharts.Chart({
printButton : {
enabled : false
},
chart : {
renderTo : 'container',
defaultSeriesType : 'column',
margin : [ 50, 50, 100, 80 ]
},
title : {
text : ''
},
xAxis : {
categories : eval("${dayNum}"),
labels : {
rotation : -45,
align : 'right',
style : {
font : 'normal 13px Verdana, sans-serif'
}
},
title : {
text : 'Day'
}
},
yAxis : {
min : 0,
title : {
text : 'KWH'
}
},
legend : {
enabled : false
},
tooltip : {
formatter : function() {
return 'Energy: '+ Highcharts.numberFormat(this.y, 1)+'KWH'+'<br/>'+'Day: '+this.x;
}
},
series : [ {
name : 'Population',
data : eval("${monthData}"),
dataLabels : {
enabled : true,
rotation : -90,
color : '#FFFFFF',
align : 'right',
x : -3,
y : 10,
formatter : function() {
return this.y;
},
style : {
font : 'normal 13px Verdana, sans-serif'
}
}
} ]
});
});
</script>
<body>
<!-- 3. Add the container -->
<div id="container" style="width: 800px; height: 400px; margin: 0 auto"></div>
</body>