今天给大家一个由JFreeChart组件实现的3D效果的饼图,同时自己也收藏一下。代码如下:
package com.gxa.edu.test;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.PiePlot3D;
import org.jfree.data.general.DefaultPieDataset;
import org.jfree.data.general.PieDataset;
import org.jfree.ui.ApplicationFrame;
import org.jfree.ui.RefineryUtilities;
import org.jfree.util.Rotation;
/**
* A simple demonstration application showing how to create a pie chart using data from a
* {@link DefaultPieDataset}.
*
*/
public class PieChart3DDemo1 extends ApplicationFrame {
/**
* Creates a new demo.
*
* @param title the frame title.
*/
public PieChart3DDemo1(final String title) {
super(title);
// create a dataset...
final PieDataset dataset = createSampleDataset();
// create the chart...
final JFreeChart chart = createChart(dataset);
// add the chart to a panel...
final ChartPanel chartPanel = new ChartPanel(chart);
chartPanel.setPreferredSize(new java.awt.Dimension(500, 270));
setContentPane(chartPanel);
}
/**
* Creates a sample dataset for the demo.
*
* @return A sample dataset.
*/
private PieDataset createSampleDataset() {
final DefaultPieDataset result = new DefaultPieDataset();
result.setValue("Java", new Double(43.2));
result.setValue("Visual Basic", new Double(10.0));
result.setValue("C/C++", new Double(17.5));
result.setValue("PHP", new Double(32.5));
result.setValue("Perl", new Double(1.0));
return result;
}
// ****************************************************************************
// * JFREECHART DEVELOPER GUIDE *
// * The JFreeChart Developer Guide, written by David Gilbert, is available *
// * to purchase from Object Refinery Limited: *
// * *
// * http://www.object-refinery.com/jfreechart/guide.html *
// * *
// * Sales are used to provide funding for the JFreeChart project - please *
// * support us so that we can continue developing free software. *
// ****************************************************************************
/**
* Creates a sample chart.
*
* @param dataset the dataset.
*
* @return A chart.
*/
private JFreeChart createChart(final PieDataset dataset) {
final JFreeChart chart = ChartFactory.createPieChart3D(
"Pie Chart 3D Demo 1", // chart title
dataset, // data
true, // include legend
true,
false
);
final PiePlot3D plot = (PiePlot3D) chart.getPlot();
plot.setStartAngle(290);
plot.setDirection(Rotation.CLOCKWISE);
plot.setForegroundAlpha(0.5f);
plot.setNoDataMessage("No data to display");
return chart;
}
/**
* Starting point for the demonstration application.
*
* @param args ignored.
*/
public static void main(final String[] args) {
final PieChart3DDemo1 demo = new PieChart3DDemo1("Pie Chart 3D Demo 1");
demo.pack();
RefineryUtilities.centerFrameOnScreen(demo);
demo.setVisible(true);
}
}
- 大小: 21.2 KB
分享到:
相关推荐
"带阴影的3D效果饼图"是一个典型的图形组件,它能够以更直观、立体的方式展示数据分布。在这个项目中,开发者使用了QT库在VC2010环境下实现了这一功能。QT是一个跨平台的应用开发框架,支持Windows、Linux、Mac OS等...
接下来,我们探讨如何用GDI+来实现3D效果的饼图: 1. 初始化绘图环境:首先,你需要创建一个`Graphics`对象,它是GDI+的核心,用于执行所有的绘图操作。通常,你可以从窗体、控件或者其他支持绘图的表面获取这个...
基于Vue的3D饼图,可进行拖动旋转、缩放、自动旋转~
- `projection: 'cylinder'` 将视图转换为圆柱形,实现3D效果。 - `autoRotate` 自动旋转3D视图,增强视觉效果。 - `distance` 调整视图与3D模型的距离。 **引导线的设置** ECharts的`label`配置项可以让我们...
1. `series`:定义饼图的系列,每个系列代表一个饼图,可以设置 `type` 为 `'pie'` 或 `'pie3D'` 来创建 3D 饼图。 2. `data`:在 `series` 内,定义每个扇区的数据,每个元素是一个对象,包含值(`value`)和名称...
例如,你可能需要从2D的饼图系列开始,然后改变`Series.View3D.IsRightAngleAxes`属性为`false`,设置`Series.View3D.Perspective`来调整透视角度,最后可能还需要调整其他3D相关的属性以达到理想的视觉效果。...
此外,Python的mayavi库则专精于3D图形的绘制,适用于需要更高级3D效果的场景。而JavaScript,作为Web前端开发的核心语言,配合Three.js或D3.js这样的3D图形库,也能在网页上生成令人印象深刻的3D饼图。 而针对R...
首先,要实现3D饼图,我们需要一个支持3D效果的库。虽然jQuery本身并不直接提供3D图形功能,但我们可以结合其他JavaScript库,如Three.js或Chart.js的扩展来实现。Three.js是一个强大的3D渲染库,可以创建复杂的3D...
FusionCharts是一个JavaScript图表库,支持多种图表类型,包括柱状图、线图、饼图等,并且提供了丰富的3D效果,使得图表更加生动和吸引人。 首先,我们需要了解3D饼图的基本概念。3D饼图是2D饼图的扩展,通过添加...
本文将深入探讨C#中创建3D饼图的关键知识点,包括3D效果的实现、数据绑定、自定义样式以及交互功能。 1. **使用.NET框架的图表控件** C#中通常利用.NET Framework提供的System.Windows.Forms.DataVisualization....
Echarts饼图4.0(3D环形图、包含透明效果)
在IT行业中,3D圆饼图是一种常用的可视化工具,它能有效地展示数据比例关系和分布情况,尤其在数据维度较多时,3D效果可以使图表更具立体感和吸引力。本资源"3d饼图效果特效.zip"是关于使用JavaScript库AmCharts实现...
4. **3D效果**:VisifireShow支持调整3D旋转角度,使得用户可以从不同视角查看饼图,增加交互性。 5. **动画**:利用VisifireShow的动画功能,可以让饼图块在加载或更新时有平滑的过渡效果,提升用户体验。 为了...
3. 3D转换:通过矩阵运算实现3D效果,包括透视、旋转等。 4. 动画实现:设置时间轴和帧,实现饼图的平滑过渡和动态旋转。 5. 交互处理:监听用户鼠标或触摸事件,响应用户的点击或拖动操作。 配置文件通常用于存储...
#### 3D效果优化 “use3DLighting”启用3D光照效果,增强立体感;“slicingDistance”调整切片与中心的距离,使图表层次分明;“pieRadius”控制饼图半径,影响整体外观;“enableRotation”允许图表旋转,增加动态...
在给定的标题“功能齐全的3D饼图制作程序”和描述“基于C#的3D饼图制作程序,效果不错,功能齐全”中,我们可以挖掘出几个重要的知识点: 1. **3D饼图可视化**:3D饼图相较于传统2D饼图,增加了第三维度,使视觉...
3. **3D效果的模拟**:虽然VML本身不支持真正的3D图形,但可以通过调整切片的角度和阴影来模拟3D效果。这通常涉及计算每个切片的旋转角度、深度以及添加阴影效果。 4. **数据绑定**:为了根据实际数据动态创建饼图...
AmCharts库包含多种图表类型,如折线图、饼图、柱状图等,并且支持3D效果,能提供丰富的定制选项,包括动画、数据加载效果、工具提示等,使得数据可视化更加生动和专业。 学习和掌握如何在Flex中创建3D图表,不仅...
Flex代码实现的 3D饼图效果;本示例是我按自己的思路实现的饼状3D图,并没有完成所有的Chart功能,因为涉及到的零碎内容较多,例如tip文本等等, 所以,这个示例仅仅只是做为 实现3D饼状图形的一个代码参考。 本示例...
在数据分析和信息展示中,饼图常用于表示整体与部分之间的占比,而3D效果则可以使图表更显生动,增加视觉吸引力。在这个案例中,饼图可能是使用某种图形库或框架,如Three.js、D3.js或者ECharts等构建的,这些库都...