【发布时间】:2014-09-07 14:35:03
【问题描述】:
我还没有像我想的那样深入 Java,所以我发现我目前的任务相当具有挑战性:
- 显示在另一个类中收集的数据的图表。
- 一个滑块,其结束值由图表中使用的数据集中的最后一个条目确定。
- 播放按钮目前不执行任何操作,只是让滑块以 5 步为单位滴答,直到再次暂停。
我现在的问题是:我应该根据滑块当前显示的值在图表中一次突出显示一项。
说实话……我还不习惯渲染器。
如果我理解正确,我需要使用
renderer.drawItem(java.awt.Graphics2D g2,
XYItemRendererState state,
java.awt.geom.Rectangle2D dataArea,
PlotRenderingInfo info,
XYPlot plot,
ValueAxis domainAxis,
ValueAxis rangeAxis,
XYDataset dataset,
int series,
int item,
CrosshairState crosshairState,
int pass)
但我对方法及其参数完全没有经验,也不知道如何初始化它们。
我的意思是...我从图表中得到了一个图、一个数据集和 2 个系列,我还建议“项目”是要在系列中突出显示的项目的索引,我可以从滑块转换 -价值。
不幸的是,这件事困扰着谷歌,结果令人沮丧,因为我得到的只是我在上面发布在大约 50 个不同页面上的代码(之后我放弃了)。
我想知道...首先我是否要使用正确的方法,并且我很惭愧这样问...如何使用它。
嗯...期待一些答案和...提前致谢。
【问题讨论】:
-
请编辑您的问题,添加一个short, complete example,关注您描述的问题。
-
这正是问题所在......我不知道此时要使用哪种方法,因此我只能发布没有它的代码,这根本没有帮助。我首先需要知道 drawItem(..) 是否是解决我的问题的正确方法 - 我可能完全被误导了,因为我之前从未做过任何类似的事情
-
CrosshairDemo1可能值得一看。 -
忘记更新了。我通过添加一个将根据滑块当前显示的值进行调整的 DomainMarker 解决了这个问题。所以啊...我想我现在很好。我在这里很新,但我想对于那些给出最佳答案的人来说有某种奖励功能......而且因为即使我的问题有点......“非结构化”,你也是唯一真正尝试和帮助的人,我不介意给你。所以只要留下一个答案或某事,我会在下次我的时候看到它。
标签: charts jfreechart itemrenderer jslider changelistener