Tag: 图表

如何使用JFreeCharts将图例绘制为表格?

我能够像这样绘制这个图表: 但我想这样绘制它,这意味着在图表的底部和表格(至少看起来像一个)。 这是我的代码: package charts; import java.awt.*; import java.io.*; import org.jfree.chart.ChartUtilities; import org.jfree.chart.ChartFactory; import org.jfree.chart.JFreeChart; import org.jfree.chart.block.BlockBorder; import org.jfree.chart.labels.PieSectionLabelGenerator; import org.jfree.chart.labels.StandardPieSectionLabelGenerator; import org.jfree.chart.plot.PiePlot; import org.jfree.chart.title.LegendTitle; import org.jfree.chart.title.TextTitle; import org.jfree.data.general.DefaultPieDataset; import org.jfree.ui.RectangleEdge; public class PieChart { public static void main( String[ ] args ) throws Exception { DefaultPieDataset dataset = new DefaultPieDataset(); dataset.setValue(“A”, new Double( 36.95 […]

Primefaces 5.0图表 – 如何完全从数据库值动态创建图表模型和系列

我正在尝试创建图表,动态响应数据库中有关图表类型,图表模型和图表系列的值。 我看到的大多数示例和问题似乎只是静态定义图表模型和图表系列。 我想动态控制显示哪种类型的图表,图表模型和系列完全通过更改数据库中的值(通过后台或内容管理界面)显示。 我已经开发了后台内容管理系统(CMS)。 这个问题是关于如何使PF展示示例或API适应完全动态的模型,让后台定义图表的类型,模型和系列。 下面的示例尝试从3个mySql表生成一个条形图: 1)Endataset:包含由主键’idmid’定义的数据集的表2)Endataseries:包含与Endataset具有OneToMany关系的数据系列的表 – 由’recid’定义3)Endatapoint:包含实际数据值的表(数字和日期)由’pointid’定义 我想根据后台设置的内容,为每个数据集(idmid)返回一个BarChartModel和ChartSeries作为不同图表的列表。 换句话说,我想根据数据库中的许多值(数据集)动态创建图表模型和系列。 我可以使用下面的例子返回一个图表,但它显示了2个相同模型中的3个系列,而不是一个模型中的2个系列和第二个模型中的1个系列(这是我的目标)。 我的jsf: bean方法: public List getTestTopList() { testTopList = processChartList(); return testTopList; } public List processChartList() { chartType = “bar”; orig = guestChartFacade.findAll(); sers = new ArrayList(); for (int n = 0; n < orig.size(); n++) { idmid = orig.get(n).getIdmid(); selJoin = guestChartFacade.find(idmid); startDate […]

使用新数据集刷新的JFreeChart XY图表? 例?

我想学习如何使用jfreechart和googlefor一些示例来学习如何创建一些图表。 但我找不到我需要的东西。 这里很好http://www.java2s.com/Code/Java/Chart/CatalogChart.htm但是没有带有新显示值的刷新图表。 我想每隔n秒重绘一次图表,因为我用这里要显示的一组值更新了一个外部dile。 那么如何告诉jfreechart刷新绘制的图形并将其显示在canvas上? 提前致谢, 安德烈亚斯

如何将数据从java程序传递到javafx应用程序图表?

我是JavaFX的新手,但我不是Java新手。 我有一个庞大的复杂系统,可以在循环中产生一些结果。 我想要实现的是在JavaFX图表上绘制每次迭代的结果。 我这样做对java jFreeChart库没有任何问题,但现在我正在尝试切换到JavaFX。 图表看起来更花哨,我喜欢风格的处理方式。 无论如何,我正在努力了解如何在JavaFX应用程序中向XYChart.Series对象添加点。 oracle网站上的所有教程都以应用程序知道先验的一些固定点开始,并使用以下内容添加它们: `series.getData().add(new XYChart.Data(1, 23));` 但我想要实现的是有点不同。 在我的情况下,我的应用程序产生一些结果,一旦它们生成(随机时间)我想在图表上绘制它们。 我使用javafx.application.Application启动一个线程,但是当我尝试向Series对象添加一些点时,我得到一个java.lang.IllegalStateException: Not on FX application thread; currentThread = main java.lang.IllegalStateException: Not on FX application thread; currentThread = mainexception。 将数据点传递给JavaFX图表的正确方法是什么? 我认为最接近这种方法的方法是覆盖Event类型,Event对象并创建一个完整的事件处理结构……但对于我想要归档的简单事情,这看起来太复杂了! 在您看来,请您告诉我,这样做的最佳/最简单方法是什么? 编辑:这里有一些代码供您查看并给我一些建议: public class Chart extends Application { private final static XYChart.Series series = new XYChart.Series(); public static void addValue(double gen, double […]

如何使用JAVAFX 2中的AreaChart绘制实时流数据 – 并发,动画,图表

要求 – 使用实时流数据构建动画AreaChart。 也许每1秒绘制300个数据点。 详细信息 – 因此,我需要从医疗设备读取患者呼吸模式的实时流数据,并使用JavaFX中的AreaChart以波形方式显示它。 我是JavaFX的新手,因此我构建了一个小型POC,以了解JavaFX中的并发和动画是如何工作的。 这个概念有效,我对基本测试感到满意,就实现function而言。 但是我对下面代码中的性能表示不满意。 在下面的工作代码中,我创建了一个单独的线程来模拟从医疗设备获取数据。 该线程只生成一个随机数并将其添加到ConcurrentLinkedQueue。 JavaFX Application线程通过时间轴从队列中提取此数据,并将其添加到AreaChart系列。 这种类型为我提供了我需要的动画,并且在运行时添加了数据。 您可以复制粘贴此代码并对其进行测试。它应该可以正常工作。 但性能并不令人印象深刻 – CPU使用率达到56% – 我的笔记本电脑上有一块Intel Core 2 Duo @ 2.53 GHZ和4GB内存。 我的显卡是采用最新驱动程序的Mobile Intel 4 Series express。 如何改进此动画或绘制实时数据,以获得更好的性能? 注意:如果是瓶颈,我愿意在动画上妥协。 我对这里显示的实现开放了http://smoothiecharts.org/ ,其中波形只是预构建的,只是从右到左流式传输。 import java.util.concurrent.ConcurrentLinkedQueue; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.logging.Level; import java.util.logging.Logger; import javafx.animation.Animation; import javafx.animation.KeyFrame; import javafx.animation.SequentialTransition; import javafx.animation.Timeline; import […]

如何使图表内容区域占用可用的最大区域?

非常直截了当的问题: 如何使图表内容区域占用最大可用面积? 我正在使用JavaFX。 在我的情况下,我希望有许多基于真/假yAxis (0/1)的yAxis 。 遗憾的是,我无法找到如何使用yAxis或AreaChart对象上的setMaxHeight或setPrefHeight等方法更改这些图表的内容高度的解决方案。 我已经尝试过几个来自SO的答案,但没有一个有效。 这是我到目前为止的截图: 任何提示或提示?

JfreeChart:水平滚动XYBarChart – (图表翻译和导航)

我正在尝试水平滚动我的XYBarChart,我正在关注其中一个JfreeChart的演示“TranslateDemo1.java”,其中您可以在这里找到源代码: http://code.google.com/p/cori-chenxx/source/browse/aliper/trunk/aliper-core/src/test/java/com/alibaba/aliper/TranslateDemo1.java?spec=svn148&r=148 源代码适用于“TimeSeriesChart”。 然而,我尝试使用“XYBarChart”,当我滑动BAR时行为不一样。 为了清楚起见,我用以下源代码替换了#157行: JFreeChart chart1= ChartFactory.createXYBarChart( “Title”, null, true, “Ylabel”, xyDatasetTranslating, PlotOrientation.VERTICAL, true, true, false); 有谁知道应用程序以这种方式表现的原因? 以及如何解决它。 谢谢,

Java Swing:开源甘特图库

我正在为Java Swing寻找一个好的开源甘特图库。 我尝试过JFreeChart,但它无法绘制子任务。 我也试过SwiftGantt 。 它能够绘制子任务,但它有点不稳定,外观和感觉不专业:(。 你能推荐别人吗? 提前致谢!

如何在条形图中显示每个条形的条形值?

需要查看条形图中的条形表示的确切值,而不是Y轴中的近似值。 怎么可能这样做? 谢谢阅读!

JFreeChart for java swing gui应用程序中的动态xy图

是否有人使用JFreeChart开源库来绘制xy图? 有人可以发布一个如何使用程序生成的x和y值动态创建xy图的示例吗? 我在哪里可以获得有关如何使用JFreeChart开发应用程序的turorial doc或类似的东西? 提前致谢..