java如何做标签云

1 篇文章 0 订阅
1 篇文章 0 订阅

java如何作标签云?

标签云(Tag Cloud)是用以表示一个网站中的内容标签。标签的排列顺序一般依照字典排序,按照热门程度确定字体的大小和颜色。这样,依照字典或者热门程度来寻找信息便成为可能。标签通常是超链接,指向分类页面。

标签云现在用javascript很容易实现,而且效果也很炫,在网络应用中比较多,但是java的桌面应用J2SE却很少,好像很难实现这种,但是最近发现java的图像界面也可以,我用的swt做的,实现用户关键词标签云生成。

经过几天的研究,本来想用awt做,发现这玩意儿不行,最后发现swt有这个能力,实在维基百科里面找到的,下面我自己改写的一个程序共分享

效果:

 

 

部分代码

public class TagCloudShow {
   .Display display = new Display();
   Shell shell = new Shell(display);  
 public static int rndColor(){
  int[] color = {SWT.COLOR_BLUE, SWT.COLOR_CYAN, SWT.COLOR_RED, SWT.COLOR_YELLOW, SWT.COLOR_GREEN, SWT.COLOR_BLACK, SWT.COLOR_DARK_YELLOW, SWT.COLOR_DARK_BLUE, SWT.COLOR_DARK_GREEN, SWT.COLOR_MAGENTA};
  Random r = new Random();
  return color[r.nextInt(color.length)];
 }
 public static int rndangle(double weight){
  if(weight >= 0.6){
    return getRandom(-15,15);
  }else if(weight < 0.6&&weight > 0.3){
       return getRandom(16,45);
     }else if(weight <= 0.3&&weight > 0.2){
      return getRandom(46,90);
     }else
      return getRandom(-90,-15);
 }
 
 public static int getRandom(int start,int end){
  return (int)(Math.random()*(end-start+1))+start;
    }
 public static void main(String [] args) {
  Map<String, Double> m = new HashMap<String, Double>();
  m.put("中国", 0.6);
  m.put("华师", 0.4);
  m.put("中心", 0.1);
  m.put("国家", 0.8);
  m.put("米兰", 0.2);
  m.put("足球", 0.4);
  m.put("伊拉克", 0.3);
  m.put("韩国", 0.3);
  m.put("博雅", 0.4);
  m.put("日本", 0.05);
  m.put("美国", 0.3);
  m.put("曼联", 0.5);
  m.put("篮球", 0.3);
  m.put("伊朗", 0.2);
  System.out.println(m);
  wordBags(m);
 }
}

 

 

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值