当鼠标停留在数据点时,希望有提示信息显示,但是根据业务需要,我们需要自定义显示一下信息!具体功能实现如下:

首先我们要弄明白,Jfreechart鼠标提示信息显示主要是得到一个数据的map对象,该map中定义了热点的坐标及提示时显示的信息即title

html或jsp中代码:

<img src="Jfreechart生成的图片路径" width=800 height=400 border=0 usemap="mapKey" >"

mapKey 默认为JfreeChart生成的图片名:mapKey = ServletUtilities.saveChartAsPNG(chart, 800, 400, info,session);// 生成图片

知道该原理,只有得到map,然后把里面的提示信息修改为我们的自定义提示信息即可;

如何生成图表(略过) 网上一搜一大把

1、首先获取map数据:

            JFreeChart chart = ChartFactory.createTimeSeriesChart(
"正常用量分析", // title
x_name, // x-axis label
"消耗热能 [单位:MJ]", // y-axis label
collection, // data
false, // create legend?
true, // generate tooltips?
false // generate URLs?
);

当你创建JFeeChart对象倒数第二个参数为true时,表示生成工具提示。

当把数据插入到数据集后,通过

String map_ = ChartUtilities.getImageMap(fileName,info);

获取到map提示信息的字符串表现形式,打印出来:

<map id="jfreechart-33716.png" name="jfreechart-33716.png">
<area shape="poly" coords="771,60,777,60,777,66,771,66,771,60,771,60" title="正常用量分析: (10-10-1 上午12:00, 10,000)" alt="" nohref="nohref"/>
<area shape="poly" coords="699,90,705,90,705,96,699,96,699,90,699,90" title="正常用量分析: (10-9-1 上午12:00, 9,000)" alt="" nohref="nohref"/>
<area shape="poly" coords="626,119,632,119,632,125,626,125,626,119,626,119" title="正常用量分析: (10-8-1 上午12:00, 8,000)" alt="" nohref="nohref"/>
<area shape="poly" coords="552,149,558,149,558,155,552,155,552,149,552,149" title="正常用量分析: (10-7-1 上午12:00, 7,000)" alt="" nohref="nohref"/>
<area shape="poly" coords="481,179,487,179,487,185,481,185,481,179,481,179" title="正常用量分析: (10-6-1 上午12:00, 6,000)" alt="" nohref="nohref"/>
<area shape="poly" coords="407,208,413,208,413,214,407,214,407,208,407,208" title="正常用量分析: (10-5-1 上午12:00, 5,000)" alt="" nohref="nohref"/>
<area shape="poly" coords="336,238,342,238,342,244,336,244,336,238,336,238" title="正常用量分析: (10-4-1 上午12:00, 4,000)" alt="" nohref="nohref"/>
<area shape="poly" coords="263,268,269,268,269,274,263,274,263,268,263,268" title="正常用量分析: (10-3-1 上午12:00, 3,000)" alt="" nohref="nohref"/>
<area shape="poly" coords="196,297,202,297,202,303,196,303,196,297,196,297" title="正常用量分析: (10-2-1 上午12:00, 2,000)" alt="" nohref="nohref"/>
<area shape="poly" coords="122,327,128,327,128,333,122,333,122,327,122,327" title="正常用量分析: (10-1-1 上午12:00, 1,000)" alt="" nohref="nohref"/>

</map>

提示信息是在title项,只要我们把title项改为我们需要的信息即可。

最后完成的效果:

JFreeChart当鼠标停留在热点提示自定义信息功能的更多相关文章

  1. ASP.NET TextBox 当鼠标点击后清空默认提示文字

    ASP.NET TextBox 当鼠标点击后清空默认提示文字 [ 方法一] 前台代码: <div>    <asp:TextBox ID="txtName" ru ...

  2. WPF中关于自定义控件的滚动条鼠标停留在内容上鼠标滚轮滚动无效的问题

    问题起因:在一个用户控件里放置了1个TreeView垂直顺序放置. 当用户控件中的内容超过面板大小时,滚动条会自动出现 ,但是只有当鼠标指示在右边滚动条的那一条位置时,才支持鼠标滚轴滚动. 点在控件内 ...

  3. 发掘ListBox的潜力(二):鼠标拖放插入点提示

    鼠标拖放插入点提示 鼠标拖放是Windows常见的操作,比如拷贝文件就可用拖放方式进行.在我们编写的应用程序中,有时为了方便用户操作需要支持鼠标拖放.对于大部分的VCL控件只要鼠标将DragMode设 ...

  4. WPF实现按钮鼠标停留样式的一个坑

    弄了个按钮鼠标停留样式,发现把它应用到某些窗体的Button上会发生样式模糊的问题,而其它窗体又不会. 百思不得其解,真是活久见. 后来发现是跟包着Button的容器控件有关,只要是那些会自适应的容器 ...

  5. sublime打开文本时会记忆上次关闭时鼠标停留的位置

    sublime打开文本时会记忆上次关闭时鼠标停留的位置

  6. 富文本编辑器UEditor自定义工具栏(三、自定义工具栏功能按钮图标及工具栏样式简单修改)

    导读 富文本编辑器UEditor提供丰富了定制配置项,如果想设置个性化的工具栏按钮图标有无办法呢?答案是肯定的!前两篇博文简要介绍了通过将原工具栏隐藏,在自定义的外部按钮上,调用UEditor各命令实 ...

  7. Javascript自定义事件功能与用法实例分析

    原文地址:https://www.jb51.net/article/127776.htm 本文实例讲述了javascript自定义事件功能与用法.分享给大家供大家参考,具体如下: 概述 自定义事件很难 ...

  8. 利用修改div的位置+js对象存储div信息 实现简单的div自定义布局功能

    原文:利用修改div的位置+js对象存储div信息 实现简单的div自定义布局功能 利用修改div的位置+js对象存储div信息 实现简单的div自定义布局功能1.在界面上添加几个checkbox和一 ...

  9. 升级IOS8游戏上传自定义头像功能失效的问题

    为了支持arm64,之前已经折腾了很久,昨晚打包准备提交苹果审核时,测试那边的同事反馈说游戏上传自定义头像功能不可用了. 游戏上传自定义功能的简介:卡牌游戏最初是<比武招亲>中有一个充VI ...

随机推荐

  1. PHP面向对象(OOP):__set(),__get(),__isset(),__unset()四个方法的应用

    一般来说,总是把类的属性定义为private,这更符合现实的逻辑.但是, 对属性的读取和赋值操作是非常频繁的,因此在PHP5中,预定义了两个函数”__get()”和”__set()”来获取和赋值其属性 ...

  2. Asp.Net MVC5 格式化输出时间日期

    刚好用到这个,网上找的全部是输出文本框内容的格式化日期时间 而我需要只是在一个表格中的单元个中输出单纯的文字 最后在MSDN上找到 HtmlHelper.FormatValue 方法 public s ...

  3. bzoj2260: 商店购物 && 4349: 最小树形图

    Description Grant是一个个体户老板,他经营的小店因为其丰富的优惠方案深受附近居民的青睐,生意红火.小店的优惠方案十分简单有趣.Grant规定:在一次消费过程中,如果您在本店购买了精制油 ...

  4. 如何从BBC网站学习英语

  5. cf C. Fox and Box Accumulation

    题意:输入一个n,然后输入n个数,问你可以划分多少个序列,序列为:其中一个数为c,在它的前面最多可以有c个数. 思路:先排序,然后对于每一个数逐步的找没有被用过的数,且这个数可以符合条件,然后如果没有 ...

  6. curl post传递json数据

    有时想在命令行使用post http提交一个表单,比较常用的是POST模式和GET模式 GET模式什么option都不用,只需要把变量写在url里面就可以了 比如:curl http://www.wa ...

  7. BZOJ 1055 [HAOI2008]玩具取名

    1055: [HAOI2008]玩具取名 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1119  Solved: 653[Submit][Statu ...

  8. Linux Shell编程(3)——运行shell脚本

    写完一个脚本,你能够运行它用命令:sh scriptname, [5] 另外也也可以用bash scriptname. 来执行(不推荐使用:sh <scriptname, 因为这样会禁止脚本从标 ...

  9. 【转】通知 Toast详细用法(显示view)

    原文网址:http://www.pocketdigi.com/20100904/87.html 今天学习Android通知 Toast的用法,Toast在手机屏幕上向用户显示一条信息,一段时间后信息会 ...

  10. 数学(动态规划,GCD):COGS 469. [NOI2010]能量采集

    能量采集 ★★☆   输入文件:energy2010.in   输出文件:energy2010.out   简单对比 时间限制:1 s   内存限制:512 MB [问题描述] 栋栋有一块长方形的地, ...