java代码数据生成图表 javaweb生成图表

如何使用java做统计图表

//参考地址去网站下js控件,下面是饼图的代码,下图是我的代码效果

站在用户的角度思考问题,与客户深入沟通,找到襄城网站设计与襄城网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站设计、成都网站制作、企业官网、英文网站、手机端网站、网站推广、国际域名空间、网站空间、企业邮箱。业务覆盖襄城地区。

function query1(housetype,redStatisticsList,text0,cashingSum,tranferSum){

!--红包发放数据--

var myrodiusred = echarts.init(document.getElementById('mainrodius'));//ID

var redHousehold = housetype;

var redMoney = redStatisticsList;

var allMoney = 0;//总金额

$.each(redStatisticsList,function(index,item){

allMoney =allMoney+ Number(item.value);

})

optionTwo = {

title : {

text: text0,

subtext: "总金额:"+allMoney+"\n\n提现总额:"+cashingSum+"\n\n到账总额:"+tranferSum,

x:'center'

},

tooltip : {

trigger: 'item',

formatter: "{a} br/{b} ({d}%)"

},

legend: {

orient: 'vertical',

left: 'left',

data: housetype

},

series : [

{

type: 'pie',

radius : '55%',

center: ['50%', '60%'],

data:redMoney,

itemStyle: {

emphasis: {

shadowBlur: 10,

shadowOffsetX: 0,

shadowColor: 'rgba(0, 0, 0, 0.5)'

}

}

}

]

};

myrodiusred.setOption(optionTwo);

}

eclipse中用JAVA代码怎么画柱形图表

用jfreechart

jfreechart绘制柱状图

import java.io.File;

import java.io.IOException;

import org.jfree.chart.ChartFactory;

import org.jfree.chart.ChartUtilities;

import org.jfree.chart.JFreeChart;

import org.jfree.chart.plot.PlotOrientation;

import org.jfree.data.category.DefaultCategoryDataset;

/*

* 绘制柱状图

*你亮哥

* */

public class BarChart3DDemo

{

public static void main(String[] args)

{

try

{

//设置主题

ChartFactory.setChartTheme(Theme.getTheme());

//构造数据

DefaultCategoryDataset dataset = new DefaultCategoryDataset();

dataset.addValue(100, "JAVA","1");

dataset.addValue(200, "js","1");

dataset.addValue(200, "C++", "2");

dataset.addValue(300, "C", "3");

dataset.addValue(400, "HTML", "4");

dataset.addValue(400, "CSS", "5");

/*

* public static JFreeChart createBarChart3D(

* java.lang.String title, 设置图表的标题

* java.lang.String categoryAxisLabel, 设置分类轴的标示

* java.lang.String valueAxisLabel, 设置值轴的标示

* CategoryDataset dataset, 设置数据

* PlotOrientation orientation, 设置图表的方向

* boolean legend, 设置是否显示图例

* boolean tooltips,设置是否生成热点工具

* boolean urls) 设置是否显示url

*/

JFreeChart chart = ChartFactory.createBarChart3D("编程语言统计", "语言",

"学习人数", dataset, PlotOrientation.VERTICAL, true, false,

false);

//保存图表

ChartUtilities.saveChartAsPNG(new File("E:/chart/BarChart3D.png"), chart, 800, 500);

System.out.println("绘图完成");

}

catch (IOException e)

{

e.printStackTrace();

}

}

}

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

//一条线 有点 有数

package Test;

import java.awt.Color;

import java.awt.Font;

import org.jfree.chart.ChartFactory;

import org.jfree.chart.ChartFrame;

import org.jfree.chart.JFreeChart;

import org.jfree.chart.axis.AxisSpace;

import org.jfree.chart.labels.ItemLabelAnchor;

import org.jfree.chart.labels.ItemLabelPosition;

import org.jfree.chart.labels.StandardXYItemLabelGenerator;

import org.jfree.chart.plot.XYPlot;

import org.jfree.chart.renderer.xy.XYItemRenderer;

import org.jfree.chart.renderer.xy.XYLineAndShapeRenderer;

import org.jfree.chart.title.TextTitle;

import org.jfree.data.time.Month;

import org.jfree.data.time.TimeSeries;

import org.jfree.data.time.TimeSeriesCollection;

import org.jfree.ui.RectangleInsets;

import org.jfree.ui.TextAnchor;

public class try123 {

public static void main(String[] args){

//首先构造数据

TimeSeries timeSeries = new TimeSeries("BMI", Month.class);

// 时间曲线数据集合

TimeSeriesCollection lineDataset = new TimeSeriesCollection();

// 构造数据集合

timeSeries.add(new Month(1, 2009), 45);

timeSeries.add(new Month(2, 2009), 46);

timeSeries.add(new Month(3, 2009), 1);

timeSeries.add(new Month(4, 2009), 500);

timeSeries.add(new Month(5, 2009), 43);

timeSeries.add(new Month(6, 2009), 324);

timeSeries.add(new Month(7, 2009), 632);

timeSeries.add(new Month(8, 2009), 34);

timeSeries.add(new Month(9, 2009), 12);

timeSeries.add(new Month(10, 2009), 543);

timeSeries.add(new Month(11, 2009), 32);

timeSeries.add(new Month(12, 2009), 225);

lineDataset.addSeries(timeSeries);

JFreeChart chart = ChartFactory.createTimeSeriesChart("", "date", "bmi", lineDataset, true, true, true);

//增加标题

chart.setTitle(new TextTitle("XXXBMI指数", new Font("隶书", Font.ITALIC, 15)));

chart.setAntiAlias(true);

XYPlot plot = (XYPlot) chart.getPlot();

plot.setAxisOffset(new RectangleInsets(10,10,10,10));//图片区与坐标轴的距离

plot.setOutlinePaint(Color.PINK);

plot.setInsets(new RectangleInsets(15,15,15,15));//坐标轴与最外延的距离

// plot.setOrientation(PlotOrientation.HORIZONTAL);//图形的方向,包括坐标轴。

AxisSpace as = new AxisSpace();

as.setLeft(25);

as.setRight(25);

plot.setFixedRangeAxisSpace(as);

chart.setPadding(new RectangleInsets(5,5,5,5));

chart.setNotify(true);

// 设置曲线是否显示数据点

XYLineAndShapeRenderer xylineandshaperenderer = (XYLineAndShapeRenderer)plot.getRenderer();

xylineandshaperenderer.setBaseShapesVisible(true);

// 设置曲线显示各数据点的值

XYItemRenderer xyitem = plot.getRenderer();

xyitem.setBaseItemLabelsVisible(true);

xyitem.setBasePositiveItemLabelPosition(new ItemLabelPosition(ItemLabelAnchor.INSIDE10, TextAnchor.BASELINE_LEFT));

xyitem.setBaseItemLabelGenerator(new StandardXYItemLabelGenerator());

xyitem.setBaseItemLabelFont(new Font("Dialog", 1, 14));

plot.setRenderer(xyitem);

//显示

ChartFrame frame = new ChartFrame("try1", chart);

frame.pack();

frame.setVisible(true);

}

}

java怎么从数据库里获得动态数据生成统计图

我这个是使用的echarts的饼图,如果需要使用到其他的图形,可以在echarts的官网上面去找找,上面各种的图都有例子

option = {

title : {

//图中2的位置

text: '某站点用户访问来源',

subtext: '纯属虚构',

x:'center'

},

tooltip : {

trigger: 'item',

formatter: "{a} br/{b} : {c} ({d}%)"

},

legend: {

orient: 'vertical',

left: 'left',

data: ['直接访问','邮件营销','联盟广告','视频广告','搜索引擎']//图中1的位置

},

series : [   //图中3的位置

{

name: '访问来源',

type: 'pie',

radius : '55%',

center: ['50%', '60%'],

data:[

//这下面就是你从数据库中查询的结果

{value:335, name:'直接访问'},

{value:310, name:'邮件营销'},

{value:234, name:'联盟广告'},

{value:135, name:'视频广告'},

{value:1548, name:'搜索引擎'}

],

itemStyle: {

emphasis: {

shadowBlur: 10,

shadowOffsetX: 0,

shadowColor: 'rgba(0, 0, 0, 0.5)'

}

} }]};

数据具体怎么从后台传送到前台来,楼主应该知道的吧,我这儿就不说了,望采纳!

用java将数据导出到wps表格中,怎么实现

一:页面图片显示预览:

1)如下图:

2)点击导出按钮后预览:

3)最终生成的excel表格图片预览:

二:代码演示:

说明:执行操作时,请先引进导出excel表格的jar文件包。

找到导出按钮所执行的js方法,在java后天查看该方法的实现即可。

1)jsp代码:

[html] view plaincopyprint?

%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%

%@taglib prefix="s" uri="/struts-tags" %

%

String path = request.getContextPath();

String basePath = request.getScheme() + "://"

+ request.getServerName() + ":" + request.getServerPort()

+ path + "/";

%

html

head

base href="%=basePath%"

title驾校合格率排名/title

link href="jsp/commonstyle/css/tabStyle.css" rel="stylesheet" type="text/css"

link rel="STYLESHEET" type="text/css" href="%=basePath%jsp/hgltj/js/tablesort.css"

script type="text/javascript" src="%=basePath%jsp/system/common/js/publicColor.js"/script

script type="text/javascript" src="jsp/commonstyle/js/js/My97DatePicker/WdatePicker.js" defer="defer"/script

script type="text/javascript" src="%=basePath%jsp/hgltj/js/tablesort.js"/script

script language="JavaScript"

function load()

{

//根据分辨率设置表格大小

maxw=document.getElementById("maintb").offsetWidth;

if(maxw824){//1024分辨率未展开

mainbox.width="98%";

} else if(maxw1013){//1024分辨率展开

mainbox.width="98%";

} else  if(maxw1081){//1280分辨率未展开

mainbox.width="95%";

} else  if(maxw1270){//1280分辨未展开

mainbox.width="95%";

}else{//1280以上分辨展开

mainbox.width="98%";

}

}

/script

script

function overIt(){

var the_obj = event.srcElement;

if(the_obj.tagName.toLowerCase() == "td"){

the_obj=the_obj.parentElement;

the_obj.oBgc=the_obj.currentStyle.backgroundColor;

the_obj.oFc=the_obj.currentStyle.color;

the_obj.style.backgroundColor='#4073C4';

the_obj.style.color='#ffffff';

the_obj.style.textDecoration='underline';

}

}

function outIt(){

var the_obj = event.srcElement;

if(the_obj.tagName.toLowerCase() == "td"){

the_obj=the_obj.parentElement;

the_obj.style.backgroundColor=the_obj.oBgc;

the_obj.style.color=the_obj.oFc;

the_obj.style.textDecoration='';

}

}

function serch(){

document.getElementById("formName").action="%=basePath %hgltj.action?method=getHglpm";

document.getElementById("formName").submit();

}

function tbbt(){

var jzrq=document.getElementById("jzrqId").value;

//var jxmc=document.getElementById("jxmcId").value;

window.open('%=basePath %hgltj.action?method=getHglpmTbtjjxkshgl.jzrq='+jzrq+'tjjxkshgl.zt='+1,'','height=650,width=1250,top=150,left=200,toobar=no,menubar=no,scrollbars=yes,resizable=no,location=no,');

}

function openwd(){

document.getElementById("formName").action="%=basePath %hgltj.action?method=downJxhglPm";

document.getElementById("formName").submit();

}

/script

/head

BODY onLoad="load()" style="background: url(images/cont_bg.gif); background-repeat: repeat-y"

input type="hidden" name="method" value="getDriverInfoList"/

table border="0" width="100%" cellspacing="0" cellpadding="0" id="maintb"

tr

td align="center"

table width="90%"  border="0"  cellspacing="0" cellpadding="0" id="mainbox" style="background:url(jsp/commonstyle/images/usermessage_02.gif); background-repeat:repeat-x;" 

!--宽度可变内容框--

tr 

td width="33" height="27" style=" background:url(jsp/commonstyle/images/usermessage_01.gif); background-position:left; background-repeat:no-repeat;" /td

td width="965" class="style1"font color="black"驾校合格率排名/font/td

td width="14" height="27" style=" background:url(jsp/commonstyle/images/usermessage_03.gif); background-position:right; background-repeat:no-repeat;" /td

/tr

tr

td colspan="3"

!--页面主体内容开始--

!--查询条件--

form action="" name="formName" method="post" style="margin:0px" id="formName" theme="simple"

table width="100%" border="0" cellpadding="0" cellspacing="0"   style="border-collapse:collapse;" id="tj" align="center"

tr align="left"

td class="tjbg1" style="text-align: left"

!-- input type="hidden" id="method"  name="method" value="getHglpm"/ --

统计日期:

input type="text" name="tjjxkshgl.jzrq" id="jzrqId" value="s:property value="tjjxkshgl.jzrq"/" onclick="WdatePicker({skin:'whyGreen',dateFmt:'yyyy-MM'})"/

!-- 驾校名称:

s:select id="jxmcId"  name="tjjxkshgl.jxxh"  value="tjjxkshgl.jxxh" list="schoolList" listKey="jxxh" listValue="jxmc" headerKey="" headerValue="--请选择--" theme="simple"/s:select        --

input name="input" value=" 统 计 " type="button" class="normalbtn" onClick="serch()" style="margin-bottom: 5px" /

input name="input" type="button" value=" 合格率图表 " onclick="tbbt()" class="normalbtn" style="margin-bottom: 5px" /

input id="Button1" type="button" value=" 导 出 " onclick="openwd();" class="normalbtn" style="margin-bottom: 5px" /

/td

/tr

/table!--查询结果--

/form

!--查询结果--

table width="100%" border="0" cellpadding="4" cellspacing="1" bgcolor="#abcfff" id="cxjg" align="center"

thead

tr class="tbtitle"

td width="4%" align="center" class="t1"名次/td

td width="8%" align="center" class="t1"名称/td

td class="t1" width="5%" align="center"科目一/td

td class="t1" width="5%" align="center"科目二/td

td class="t1" width="5%" align="center"科目三/td

td class="t1" width="5%" align="center"平均合格率/td

td class="t1" width="5%" align="center"操作/td

/tr

/thead

s:iterator id="jxhgl" value="jxhelpmList" status="st"

tr class="changeColor" onMouseOver="overIt()" onMouseOut="outIt()" style="cursor: hand" align="center"

tds:property value="#st.index+1"//td

tds:property value="#jxhgl.jxmc"//td

tds:property value="#jxhgl.km1hgl"//td

tds:property value="#jxhgl.km2hgl"//td

tds:property value="#jxhgl.km3hgl"//td

tds:property value="#jxhgl.avghgl"/%/td

td

a href="javascript:" onclick="openWin('%=basePath %hgltj.action?method=getTbForJxxhtjjxkshgl.jxxh=s:property value="#jxhgl.jxxh"/tjjxkshgl.zt=1','',1250,750);"图表/a

/td

/tr

/s:iterator

/table

/table

/td

/tr

/table

/body

/html

2)java代码演示:

[java] view plaincopyprint?

/**

* 驾校合格率导出excel图表

*/

//response.getOutputStream();// 取得输出流

response.reset();// 清空输出流

String tmptitle = "驾校合格率排名"; // 标题

response.setHeader("Content-disposition", "attachment; filename="+new String(tmptitle.getBytes(),"iso8859-1")+".xls");// 设定输出文件头

response.setContentType("application/vnd.ms-excel");// 定义输出类型

wbook = Workbook.createWorkbook(os); // 建立excel文件

WritableSheet wsheet = wbook.createSheet(tmptitle, 0); // sheet名称

// 设置excel标题

//cellFormat.setBackground(Colour.AQUA);

cellFormat.setFont(wfont);

label.setCellFormat(cellFormat);

wsheet.addCell(label);

//wsheet.addCell(new Label(0, 0, tmptitle, wcfFC));

wsheet.setRowView(0,500); //第一行高度

wsheet.mergeCells(0, 0, 6, 1);  //合并单元格(第一列的第一行和第七列的第二行合并)

//wsheet.mergeCells(0, 1, 9, 1);

//      wsheet.mergeCells(0, 2, 0, 4);

//      wsheet.mergeCells(1, 2, 3, 2);

//      wsheet.mergeCells(4, 2, 6, 2);

//      wsheet.mergeCells(7, 2, 9, 2);

wsheet.setColumnView(0,10); //宽度

wsheet.setColumnView(1,25); //宽度

wsheet.setColumnView(2,10); //宽度

wsheet.setColumnView(3,10); //宽度

wsheet.setColumnView(4,10); //宽度

wsheet.setColumnView(5,10); //宽度

// 开始生成主体内容

wfont = new jxl.write.WritableFont(WritableFont.ARIAL, 14,WritableFont.BOLD,false, UnderlineStyle.NO_UNDERLINE,Colour.BLACK);

wcfFC = new WritableCellFormat(wfont);

wsheet.addCell(new Label(0, 2, "名次",wcfFC));

wsheet.addCell(new Label(1, 2, "驾校名称",wcfFC));

wsheet.addCell(new Label(2, 2, "科目一",wcfFC));

wsheet.addCell(new Label(3, 2, "科目二",wcfFC));

wsheet.addCell(new Label(4, 2, "科目三",wcfFC));

wsheet.addCell(new Label(5, 2, "合格率",wcfFC));

int count=jxhelpmList.size();

if(count0){  ////判断集合是否不为0

TjJxkshgl tjhgl=null;

for(int i=0;ijxhelpmList.size();i++){

tjhgl=(TjJxkshgl)jxhelpmList.get(i);

wsheet.addCell(new Label(0, i+3, (i+1)+""));

wsheet.addCell(new Label(1, i+3, tjhgl.getJxmc()));

wsheet.addCell(new Label(2, i+3, tjhgl.getKm1hgl()));

wsheet.addCell(new Label(3, i+3, tjhgl.getKm2hgl()));

wsheet.addCell(new Label(4, i+3, tjhgl.getKm3hgl()));

wsheet.addCell(new Label(5, i+3, tjhgl.getAvghgl()));

}


文章标题:java代码数据生成图表 javaweb生成图表
网页链接:http://scyanting.com/article/hgojeg.html