java报表管理源代码 java主流报表工具( 十 )


true,
false,
false
);
ChartUtilities.writeChartAsJPEG(res.getOutputStream(),
100,chart,400,300,null);
}
/**
* 获取一个演示用的简单数据集对象
* @return
*/
private static DefaultPieDataset getDataSet() {
DefaultPieDataset dataset = new DefaultPieDataset();
dataset.setValue("苹果",100);
dataset.setValue("梨子",200);
dataset.setValue("葡萄",300);
dataset.setValue("香蕉",400);
dataset.setValue("荔枝",500);
return dataset;
}
}
4高级主题
很多情况我们不仅仅要求可以在浏览器上显示一个图表,我们更需要客户可以直接在图表上做一下交互的操作,例如获取信息提示,点击图表某个部分进行更详细信息的展示等等 。例如前面生成的简单柱状图,用户需要在看到柱状图后点击某种水果例如是苹果即可看到各个地区苹果产量的情况 。为此就要求该图形具有交互操作的功能 。在 HTML 中为了让一个图像具有可交互的功能就必须给该图像定义一个 Map 对象 。下表节选一段具有该功能的 HTML 代码:
MAP NAME="chartMap"
AREA SHAPE="RECT" COORDS="81,15,126,254" href="https://www.04ip.com/post/?series=0category=100"
title="100 = 7,048"
onclick="javascript:clickChart('100');return false;"
AREA SHAPE="RECT" COORDS="143,27,188,255" href="https://www.04ip.com/post/?series=0category=200"
title="200 = 6,721"
onclick="javascript: clickChart ('200');return false;"
AREA SHAPE="RECT" COORDS="205,54,250,255" href="https://www.04ip.com/post/?series=0category=300"
title="300 = 5,929"
onclick="javascript: clickChart ('300');return false;"
AREA SHAPE="RECT" COORDS="267,85,312,255" href="https://www.04ip.com/post/?series=0category=400"
title="400 = 5,005"
onclick="javascript: clickChart ('400');return false;"
AREA SHAPE="RECT" COORDS="329,17,374,255" href="https://www.04ip.com/post/?series=0category=Diet"
title="Diet = 7,017" onclick="javascript:
clickChart ('Diet');return false;"
/MAP
由此就产生了一个问题:如果根据一个图像来生成对应的 MAP 对象 。我们回头看看刚才的代码,在创建一个图表对象时候有两个参数,我们举柱状图的例子来讲这两个参数就是 ChartFactory. createBarChart3D 方法中的最后两个参数,这两个参数的类型都是布尔值 。这两个参数意思分别是:是否创建工具提示 (tooltip) 以及是否生成 URL 。这两个参数分别对应着 MAP 中一个 AREA 的 title 属性以及 href 属性 。
可是我想知道的是怎么来产生这个 MAP ?。」?不要着急 , JFreeChart 已经帮我们做好生成 MAP 对象的功能 。为了生成 MAP 对象就要引入另外一个对象:ChartRenderingInfo 。因为 JFreeChart 没有直接的方法利用一个图表对象直接生成 MAP 数据,它需要一个中间对象来过渡,这个对象就是 ChartRenderingInfo 。
关于java报表管理源代码和java主流报表工具的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

推荐阅读