如果不想自己处理坐标变换的话:
先用BufferedImage建块更大的画布,满足你画点所需的范围;
然后用Graphics.drawRect(x,y,1,1)来画点;
最后在JPanel的graphics上用drawImage把新建的这个BufferedImage画上去,用拉伸就行了。

解决方案 »

  1.   


    你的意思是建个更大的画布,将点放大10000倍变成整数,然后传入drawRect(x,y,1,1)?
      

  2.   

    放大1000倍也就很够了,小数直接舍弃。
    其实如果用Graphics2D的话,自带translate(double tx, double ty) ,也就是可以替你做坐标变换。其实自己写个类,封装下BufferedImage,然后自行做坐标换算,更合理,而且更容易出效果。因为你核心要表达的应该是聚类,也就是密集的地方,应该能够用颜色表达出其效果。所以假设原始背景是黑色的话,坐标换算后的位置:如果没有点,就画个黑灰色点上去;如果有黑灰色点,就画个灰色点上去;如果有灰色点就画个亮灰;如果有亮灰就画个白点。当然你也可以用色系来处理,重复点少的用 深蓝色,重复点多的用亮红色。这只是做法问题而已了。
      

  3.   

    楼主 您好 请问一下 您是怎样画点的,我现在也做 点聚类后 画图的问题   一直没有找到解决办法    希望您可以把从文本中读数据 然后 根据数据 画图的代码 发给我看下,不胜感激!!!  [email protected]...