HTML折线图 java拼装html

一、vo实体类

    package HTML;

public class Student {

private String name;

private int age;//年龄

private String number;//学号

private int grade;//成绩

private String dateTime;

public String getDateTime() {
return dateTime;
}
public void setDateTime(String dateTime) {
this.dateTime = dateTime;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getNumber() {
return number;
}
public void setNumber(String number) {
this.number = number;
}
public int getGrade() {
return grade;
}
public void setGrade(int grade) {
this.grade = grade;
}
}

============================

二、main方法

package HTML;


import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import java.util.TreeMap;


import com.alibaba.fastjson.JSON;
import com.jd.jr.fintech.reports.domain.FrCrplOperationPromote;


public class html5 {

public static void main(String[] args) {
ArrayList<Student> list = new ArrayList<Student>();
Student s1 = new Student();
s1.setName("张丹");
s1.setAge(12);
s1.setNumber("1111");
s1.setGrade(78);
s1.setDateTime("2018-06-01");
list.add(s1);
Student s2 = new Student();
s2.setName("张三");
s2.setAge(16);
s2.setNumber("1222");
s2.setDateTime("2018-06-02");
s2.setGrade(68);
list.add(s2);
Student s3 = new Student();
s3.setName("张四");
s3.setAge(19);
s3.setNumber("1333");
s3.setGrade(89);
s3.setDateTime("2018-06-03");
list.add(s3);
Student s4 = new Student();
s4.setName("张五");
s4.setAge(21);
s4.setNumber("2111");
s4.setDateTime("2018-06-04");
s4.setGrade(78);
list.add(s4);
Student s5 = new Student();
s5.setName("张六");
s5.setAge(14);
s5.setNumber("1221");
s5.setGrade(48);s5.setDateTime("2018-06-05");
list.add(s5);
Student s6 = new Student();
s6.setName("张哈");
s6.setAge(18);
s6.setDateTime("2018-06-06");
s6.setNumber("1151");
s6.setGrade(76);
list.add(s6);
Student s7 = new Student();
s7.setName("张改动");
s7.setAge(34);
s7.setNumber("1611");
s7.setDateTime("2018-06-07");
s7.setGrade(48);
list.add(s7);
Student s8 = new Student();
s8.setName("张有");
s8.setAge(34);
s8.setDateTime("2018-06-08");
s8.setNumber("341");
s8.setGrade(98);
list.add(s8);
Student s9 = new Student();
s9.setName("张都是");
s9.setAge(16);
s9.setNumber("2222");
s9.setGrade(78);
s9.setDateTime("2018-06-09");
list.add(s9);
Student s0 = new Student();
s0.setName("张丹人");
s0.setAge(12);
s0.setNumber("1119");
s0.setGrade(78);
s0.setDateTime("2018-06-10");
list.add(s0);
System.err.println(list.size());
for (int i = 0; i < list.size(); i++) {
String name = list.get(i).getName();

if (name.equals("张丹人")) {
list.remove(i);
}
}
System.err.println("---------------------------------");
System.err.println(list.size());
String jsonString = JSON.toJSONString(list);
System.err.println("---------------------------------");
System.err.println(jsonString);
System.err.println("---------------------------------");

StringBuffer buffer = new StringBuffer();
buffer.append("<!DOCTYPE html><html>"
       +" <head> "
       +" <meta http-equiv='Content-Type' content='text/html; charset=utf-8'> "
       +"  <title>Wy Email.</title>"
       +"  <script charset='utf-8' type='text/javascript' src='http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.11.3.js'></script>"
       +"  <script charset='utf-8' type='text/javascript' src='http://echarts.baidu.com/gallery/vendors/echarts/echarts-all-3.js'></script> "
       +"  <script charset='utf-8' type='text/javascript' src='http://echarts.baidu.com/download-map.html'></script>"
       +" </head>"
       +" <body>");
buffer.append("<div id='mainAge' style='width: 1000px;height:400px;'></div>");
// buffer.append("<div id='mainNumber' style='width: 700px;height:400px;'></div>");
// buffer.append("<div id='mainGrade' style='width: 700px;height:400px;'></div>");
buffer.append(" <script type='text/javascript'>");
buffer.append("var mainAge = echarts.init(document.getElementById('mainAge'));");
// buffer.append("var mainNumber = echarts.init(document.getElementById('mainNumber'));");
// buffer.append("var mainGrade = echarts.init(document.getElementById('mainGrade'));");
buffer.append("var option = {");
buffer.append("title: {");
buffer.append(" text: '近七日日报数聚力' },");
buffer.append(" tooltip: { trigger: 'axis' },");
// buffer.append(" legend: { data:['阿萨德'] },");
buffer.append(" grid: { left: '5%', right: '5%', bottom: '3%',  containLabel: true },");
buffer.append(" toolbox: { feature: { saveAsImage: {} } },");
Map<String, Student> map = new TreeMap<String, Student>(
                new Comparator<String>() {
                  public int compare(String obj1, String obj2) {
                    // 降序排序
                    return obj1.compareTo(obj2);
                  }
         });
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
for (Student s : list) {
String dateTime = s.getDateTime();
String open = null;
try {
open = format.format(format.parse(dateTime));
} catch (ParseException e) {
}
if(!map.containsKey(open)){
map.put(open, s);
}
}
ArrayList<Student> lists = new ArrayList<Student>();
Set<Entry<String,Student>> entrySet = map.entrySet();
for (Entry<String, Student> entry : entrySet) {
Student value = entry.getValue();
lists.add(value);
}
String[] date = new String[list.size()];
String[] ageS = new String[list.size()];
String[] number = new String[list.size()];
String[] grade = new String[list.size()];
for (int i = 0; i < lists.size(); i++) {
ageS[i] = String.valueOf(list.get(i).getAge());
number[i] = String.valueOf(list.get(i).getNumber());
grade[i] = String.valueOf(list.get(i).getGrade());
date[i] = String.valueOf(list.get(i).getDateTime());
}
String jsonStringage = JSON.toJSONString(ageS);
String jsonStringnumber = JSON.toJSONString(number);
String jsonStringgrade = JSON.toJSONString(grade);
String jsonStringgrdate = JSON.toJSONString(date);
buffer.append(" xAxis: { type: 'category',  boundaryGap: false, data: "+jsonStringgrdate+"},");
buffer.append(" yAxis: {  type: 'value' },");
buffer.append("series: [");

buffer.append(" { name:'年龄',  type:'line',  stack: '总量', data:"+jsonStringage+" },");
buffer.append(" { name:'学号', type:'line', stack: '销量', data:"+jsonStringnumber+"  },");
buffer.append(" { name:'成绩', type:'line', stack: 'test', data:"+jsonStringgrade+"  }");
buffer.append("]  };");
buffer.append("mainAge.setOption(option);");
// buffer.append("mainNumber.setOption(option);");
// buffer.append("mainGrade.setOption(option);");

// for (Student s : list) {
// int age = s.getAge();
// al.add(age);
// }

// buffer.append("$.get('"+ageS.toString()+"').done(function (data) { "
//                  // 填入数据 
//                  +"  mainAge.setOption({ xAxis: { data: data.categories }, series: [{ "
//                        // 根据名字对应到相应的系列
//                  +"       name: '年龄',"
//                  +"       data: "+ageS.toString()
//                  +"     }] });});");
// buffer.append("$.get('data.json').done(function (data) { "
//                // 填入数据 
//                +"  mainNumber.setOption({ xAxis: { data: data.categories }, series: [{ "
//                      // 根据名字对应到相应的系列
//                +"       name: '销量',"
//                +"       data: data.data"
//                +"     }] });});");

buffer.append("</script> </body> </html>");
// buffer.append("");
// buffer.append("");

System.out.println(buffer.toString());
}
}

猜你喜欢

转载自blog.csdn.net/qq_38490078/article/details/80624887
今日推荐