import java.io.IOException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;
import org.jfree.data.category.CategoryDataset;
import org.jfree.data.general.DatasetUtilities;
import org.jfree.data.general.DefaultPieDataset;
import com.guokang.util.Getinstance;
/**
* MyEclipse Struts Creation date: 06-16-2008 XDoclet definition:
*
* @struts.action validate="true"
*/
public class BarchartAction extends DispatchAction
{
/**
* Method execute
*
* @param mapping
* @param form
* @param request
* @param response
* @return ActionForward
*/
public ActionForward barchart2D(ActionMapping mapping , ActionForm form , HttpServletRequest request ,
HttpServletResponse response) throws IOException
{
request.setAttribute("barchart2D" , Getinstance.getbar2D().getMap(request , response));
return new ActionForward("/chartjspone/PrintChart.jsp");
}
public ActionForward barchart3D(ActionMapping mapping , ActionForm form , HttpServletRequest request ,
HttpServletResponse response)
{
double[][] data = new double[][]{{672 , 766 , 223 , 540 , 126}};
String[] rowsKeys = {"苹果" };
String[] columnKeys = {"北京" , "上海" , "广州" , "成都" , "深圳"};
CategoryDataset dataset = DatasetUtilities.createCategoryDataset(rowsKeys , columnKeys , data);
request.setAttribute("barchart3D" , Getinstance.getbar3D().getMap(request , response , dataset));
return new ActionForward("/chartjspone/PrintChart.jsp");
}
/*public ActionForward piechart2D(ActionMapping mapping , ActionForm form , HttpServletRequest request ,
HttpServletResponse response) throws IOException
{
//你要进行选择的标题
String[] key = new String[]{"","A1" , "B1" , "C1" , "A2" , "B2" , "C2" , "A3" , "B3" , "C3"};
//存储你选择后的算数值
int[] value = new int[2];
//满分值
int total = 45;
//你选中后的标题
StringBuffer sb = new StringBuffer(key.length);
//转换成动态的form
DynaActionForm daform = (DynaActionForm) form;
//判断是否某一项没被选到
if (daform.get("pa")==null||daform.get("ba")==null||daform.get("wa")==null)
{
return null;
}
else
{
//转换提交的数据成整型
int a = Integer.valueOf(daform.get("pa").toString());
int b = Integer.valueOf(daform.get("ba").toString());
int c = Integer.valueOf(daform.get("wa").toString());
//对选中值进行求和
int temp = a+b+c;
value[0] = temp;
value[1] = total-temp;
//存储你所选中的标题
String title = sb.append(key[a]).append(key[b]).append(key[c]).toString();
//生成饼图数据集
DefaultPieDataset dpd = new DefaultPieDataset();
dpd.setValue(title , value[0]);
dpd.setValue("其他" , value[1]);
request.setAttribute("piechart2D" , Getinstance.getpie2D().getMap(request , dpd));
}
return new ActionForward("/jsp/PrintChart.jsp");
}*/
public ActionForward piechart3D(ActionMapping mapping , ActionForm form , HttpServletRequest request ,
HttpServletResponse response) throws IOException
{
DefaultPieDataset dpd = new DefaultPieDataset();
dpd.setValue("豆类 50g" , new Double(50));
dpd.setValue("谷 325g" , new Double(325));
dpd.setValue("奶类 250ml" , new Double(250));
dpd.setValue("蛋类 25g" , new Double(25));
dpd.setValue("油脂 18g" , new Double(18));
dpd.setValue("肉食 90g" , new Double(90));
dpd.setValue("鱼虾 50g" , new Double(50));
dpd.setValue("菜 500g" , new Double(500));
dpd.setValue("水果 200g" , new Double(200));
request.setAttribute("piechart3D" , Getinstance.getpie3D().getMap(request , dpd));
return new ActionForward("/chartjspone/PrintChart.jsp");
}
public ActionForward simplepie3D(ActionMapping mapping , ActionForm form , HttpServletRequest request ,
HttpServletResponse response) throws IOException
{
DefaultPieDataset dpd = new DefaultPieDataset();
dpd.setValue("家族史 不变因素" , new Double(0.1D));
dpd.setValue("A性格 高危可变因素" , new Double(0.1D));
dpd.setValue("过去病史 动态可变因素" , new Double(0.1D));
dpd.setValue("体检指标 动态可变因素" , new Double(0.25D));
dpd.setValue("不良生活方式 主要可变因素" , new Double(0.45D));
request.setAttribute("simplepie3D" , Getinstance.getsimplepie3D().getMap(request , dpd));
return new ActionForward("/chartjspone/PrintChart.jsp");
}
public ActionForward areachart2D(ActionMapping mapping , ActionForm form , HttpServletRequest request ,
HttpServletResponse response)
{
double bmi = 18.82D;
request.setAttribute("areachart2D" , Getinstance.getareachart2D().getMap(request , bmi));
return new ActionForward("/chartjspone/PrintChart.jsp");
}
public ActionForward newarea2D(ActionMapping mapping , ActionForm form , HttpServletRequest request ,
HttpServletResponse response)
{
double bmi = 6.8D;
request.setAttribute("newarea2D" , Getinstance.getnewareachart2D().getMap(request , bmi));
return new ActionForward("/chartjspone/PrintChart.jsp");
}
public ActionForward morebarchart2D(ActionMapping mapping , ActionForm form , HttpServletRequest request ,
HttpServletResponse response)
{
request.setAttribute("morebarchart2D" , Getinstance.getmorebarchart2D().getMap(request));
return new ActionForward("/chartjspone/PrintChart.jsp");
}
public ActionForward hbbarchart2D(ActionMapping mapping , ActionForm form , HttpServletRequest request ,
HttpServletResponse response)
{
request.setAttribute("hbbarchart2D" , Getinstance.gethbbarchart2D().getMap(request));
return new ActionForward("/chartjspone/PrintChart.jsp");
}
public ActionForward test(ActionMapping mapping , ActionForm form , HttpServletRequest request ,
HttpServletResponse response)
{
double xpress = 78D;
double ypress = 138D;
double[] value = {xpress , ypress};
request.setAttribute("test" , Getinstance.getTest().getMap(request , value));
return new ActionForward("/chartjspone/PrintChart.jsp");
}
}