gpt4 book ai didi

java - 绘制跨多个 View 或面板或水平滚动的 Java 2D 图表

转载 作者:太空宇宙 更新时间:2023-11-04 08:50:58 25 4
gpt4 key购买 nike

我正在 JFrame 上直接使用 Java 2d 图形(即绘制和填充矩形)根据存储在 Arraylist 中的一组值绘制图形。但是,当 ArrayList 具有非常大量的值(大小甚至可以达到 3500 个)时,绘图就会被压缩 - 图形看起来信息量较少,甚至 X 轴上的标签也不会显示。有没有一种方法可以使图表以多种页面方式显示(即进行限制,以便页面最多可以显示 100 个值 - 其余的值位于用户可以按页面导航的不同页面中)。

遇到这种情况我该如何处理?我可以使用任何堆叠布局吗?我可以使用面板吗?但是我可以在面板中绘制一半吗(因为图形是在循环内绘制的 - 直到读取 arraylist 的元素)?或者我可以有一个可滚动的面板吗?目前,我已手动绘制所有内容,而没有在 NetBeans 中使用拖放 GUI。

非常感谢任何见解、建议和想法。

提前非常感谢

最佳答案

一个快速的解决方案是将面板放在 JScrollPane 中。您还可以使用 card layout 。只需将图表放在 n 页上,并在每页上显示图表的 1/n 部分即可。这应该相对容易,因为您自己绘制图表。但坦率地说,您甚至不需要为您正在做的事情提供卡片布局。当按钮被按下时,只需告诉你的图表面板要显示图表的哪一部分,并让它相应地更新。

另一个选择是使用图表库而不是手动创建图表。 JFreeChart是一个常用的库,允许用户放大和缩小图表。

关于java - 绘制跨多个 View 或面板或水平滚动的 Java 2D 图表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3348704/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com