首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

jsp怎么绘图

2013-06-19 
jsp如何绘图各位大虾们,请教一个问题,在一个jsp页面中如何绘图呢,我的想法是在页面中加一个文本框和一个按

jsp如何绘图
各位大虾们,请教一个问题,在一个jsp页面中如何绘图呢,我的想法是在页面中加一个文本框和一个按钮,文本框里的内容是图上节点的内容,点击按钮,然后生成一个节点,再输入一个,再点,生成另一个节点,而且还要让这两个节点用一条线连接起来,类似画多好节点,最后还得把这些节点保存在数据库中,不知道在jsp页面能否实现,或者还有别的什么实现方式希望大师们提出合理的意见或建议!谢谢了
[解决办法]
按照你的邏輯,基本上是可行的。
把一次畫圖的點當作一個集合,server 端寫一個動態圖形產生程式,這樣就能達到。
比較麻煩的是定義連線,要用純網頁定義,會有點麻煩,因為每新增一個點(n+1),就會多很多連線(n)。
這部分處理好,要畫圖就容易許多。

[解决办法]
用JFreechart!
[解决办法]
我一般是使用java.awt.Graphics画图然后生成图片展现在jsp里,不知道能不能在jsp直接画图。关注。。。
[解决办法]
你用java画好图,然后再jsp调用

不过flex真的不错,~
[解决办法]
在jsp中去调用applet.
[解决办法]

引用:
用JFreechart!


+1
[解决办法]
JFreechart

[解决办法]

import java.applet.Applet;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;

import javax.imageio.ImageIO;
import javax.swing.JButton;

public class AppletDemo extends Applet {
   public void init() {
      int width = 300;
      int height = 200;

      final BufferedImage image = new BufferedImage(width, height,
            BufferedImage.TYPE_INT_RGB);
      Graphics g2 = image.getGraphics();
      g2.setColor(Color.WHITE);
      g2.fillRect(0, 0, width, height);

      JButton save = new JButton("save");
      JButton link = new JButton("link");
      pointX = new ArrayList();
      pointY = new ArrayList();

      save.addMouseListener(new MouseAdapter() {
         public void mouseClicked(MouseEvent e) {
            try {
               ImageIO .write(image, "jpg", new File("c:/test.jpg"));
            } catch (IOException e1) {


               e1.printStackTrace();
            }
         }
      });

      link.addMouseListener(new MouseAdapter() {
         public void mouseClicked(MouseEvent e) {
            Graphics g = getGraphics();
            Graphics g2 = image.getGraphics();
            int[] x = new int[pointX.size()];
            int[] y = new int[pointY.size()];

            for(int i = 0; i < pointX.size(); i++) {
               x[i] = Integer.parseInt((String) pointX.get(i));
               y[i] = Integer.parseInt((String) pointY.get(i));;
            }

            g2.setColor(Color.BLACK);
            g.drawPolyline(x, y, pointX.size());
            g2.drawPolyline(x, y, pointX.size());
         }
      });

      this.addMouseListener(new MouseAdapter() {
         public void mouseClicked(MouseEvent e) {
            Graphics g = getGraphics();
            Graphics g2 = image.getGraphics();

            g2.setColor(Color.BLACK);
            int radius = 10;
            g.drawOval(e.getX(), e.getY(), radius, radius);
            g.fillOval(e.getX(), e.getY(), radius, radius);

            g2.drawOval(e.getX(), e.getY(), radius, radius);
            g2.fillOval(e.getX(), e.getY(), radius, radius);
            pointX.add(String.valueOf(e.getX()));
            pointY.add(String.valueOf(e.getY()));
         }
      });

      this.add(link);
      this.add(save);
      this.setPreferredSize(new Dimension(200, 300));
      this.setVisible(true);
    }

   private ArrayList pointX;
   private ArrayList pointY;


}



<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
<title>Applet Demo</title>
</head>

<body>
    <applet code="AppletDemo.class" width="300" height="200" name="applet demo"></applet>
</body>
</html>


不知道是不是你想要的
[解决办法]
jsp页面可以嵌入jFreeChart来画图。
[解决办法]
JGraph
[解决办法]
好像没法直接绘图
[解决办法]
用jquery的树插件不是就可以了吗 

热点排行