案例:各国疫情排行
需求说明
- 从网上找到各国疫情数据,保存到Excel、txt等,然后分析10个主要国家的疫情,分别形成条形图、饼状图。
txt文件内容
美国 59031556 835815
印度 35226386 483178
巴西 22328252 619654
英国 14279775 150222
法国 11618224 126195
俄罗斯 10437471 308258
土耳其 9852458 83388
德国 7458433 113717
意大利 7083762 138697
西班牙 6922466 89837
伊朗 6204224 131821
阿根廷 6025303 117386
哥伦比亚 5242672 130191
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| String[] lines = IOHelpers.readAllLines("D:/JavaTest1/疫情/疫情.txt"); String[] countries=new String[lines.length]; Integer[] 确诊数量 = new Integer[lines.length]; Integer[] 死亡数量 =new Integer[lines.length]; for (int i =0;i< lines.length;i++) { String line =lines[i]; String[] datas = line.split("\\s"); String 国家 =datas[0]; int 确诊 = Integer.parseInt(datas[1]); int 死亡 = Integer.parseInt(datas[2]); countries[i]=国家; 确诊数量[i]=确诊; 死亡数量[i]=死亡; } XSSFWorkbook workbook = ExcelHelpers.createXLSX(); XSSFSheet sheet = workbook.createSheet(); XSSFChart chart = ExcelHelpers.createChart(sheet, 1, 1, 20, 26); chart.setTitleText("疫情统计"); chart.getOrAddLegend().setPosition(LegendPosition.LEFT); ChartFromArrayBuilder<Integer> chartBuilder = new ChartFromArrayBuilder<>(ChartTypes.BAR); chartBuilder.setCategoryNames(countries); chartBuilder.putValues("确诊数量",确诊数量); chartBuilder.putValues("死亡数量",死亡数量); chartBuilder.build(chart); ExcelHelpers.saveToFile(workbook,"D:/JavaTest1/疫情/疫情.xlsx"); ExcelHelpers.close(workbook); DesktopHelpers.openFile("D:/JavaTest1/疫情/疫情.xlsx");
|