java - 从 JTable 到直方图 - Swing

标签 java swing jtable jfreechart

我有一个包含三列的 JTable。对于每一行,我都有一个词,它的类型和出现的次数;例如在下图中,字符串“Rosing Prize”出现了两次。

enter image description here

从这个 JTable 开始,我想构建一个直方图,将第一列和最后一列作为输入。第一列是柱的名称,最后一列是它的高度;当用户选择一些行时,它们会显示在直方图中。

例如,在这种情况下,我选择了 4 行:

enter image description here

输出是四个 J 帧:第一个只有一个条(代表第一行);在第二个 J 框架中,我有两个条(第一行和第二行);在第三个 JFrame 中,第一行、第二行和第三行有 3 个条,最后在第四个和最后一个 JFrame 中,我得到了正确的输出: enter image description here

我想到了两种解决这个问题的可能性:

  1. 添加一个 Jbutton 并在按下它后在直方图中绘制选定的行
  2. 将所有 JFrame 添加到 ArrayList 并仅打印最后一个。

有没有更好的解决方案?

最佳答案

I added a ListSelectionListener listener to my table model.

在你的ListSelectionListener , 仅在 getValueIsAdjusting() 时更新图表的数据集是 false。这将推迟更新,直到选择稳定为止。

关于java - 从 JTable 到直方图 - Swing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36118587/

相关文章:

java - 使用 Spring Rowmapper 对象对数据库实体建模

java - 网格的单元格坐标不准确

java - 在运行时更改 JTable 引用 - 未出现在 GUI 中

java - 隐藏列但未读取正确的值

java - JTable 单元格编辑器仅接受数字

java - 创建用户定义的地理围栏的算法

java - NullPointerException : ProGuard, Spring 启动

java - 如何在ZK Chosenbox组件中添加ScrollBar?

java - 登录系统我不知道该怎么做

java - GroupLayout 一次只能与一个容器一起使用