`

PieChart3DDemo3.java

 
阅读更多

 

import java.awt.BorderLayout;
import java.awt.Frame;
import java.awt.Panel;

import javax.swing.JRootPane;

import org.eclipse.swt.SWT;
import org.eclipse.swt.awt.SWT_AWT;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
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.util.Rotation;

public class PieChart3DDemo3 {

	protected Shell shell;

	/**
	 * Launch the application.
	 * 
	 * @param args
	 */
	public static void main(String[] args) {
		try {
			PieChart3DDemo3 window = new PieChart3DDemo3();
			window.open();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	/**
	 * Open the window.
	 */
	public void open() {
		Display display = Display.getDefault();
		createContents();
		shell.open();
		shell.layout();
		while (!shell.isDisposed()) {
			if (!display.readAndDispatch()) {
				display.sleep();
			}
		}
	}

	/**
	 * Create contents of the window.
	 */
	protected void createContents() {
		shell = new Shell();
		shell.setSize(480, 400);
		shell.setText("PieChart3DDemo3");
		shell.setLayout(new FillLayout(SWT.HORIZONTAL));

		Composite composite = new Composite(shell, SWT.EMBEDDED);
		Frame frame = SWT_AWT.new_Frame(composite);
		Panel panel = new Panel();
		frame.add(panel);
		panel.setLayout(new BorderLayout(0, 0));
		JRootPane rootPane = new JRootPane();
		panel.add(rootPane);

		PieDataset dataset = createSampleDataset();
		JFreeChart chart = createChart(dataset);
		ChartPanel chartPanel = new ChartPanel(chart);
		panel.add(chartPanel);
	}

	private PieDataset createSampleDataset() {
		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;
	}

	private JFreeChart createChart(final PieDataset dataset) {
		JFreeChart chart = ChartFactory.createPieChart3D("Pie Chart 3D Demo 3",
				dataset, true, true, true);
		PiePlot3D plot = (PiePlot3D) chart.getPlot();
		plot.setStartAngle(0);
		plot.setDirection(Rotation.ANTICLOCKWISE);
		plot.setForegroundAlpha(0.5f);
		plot.setNoDataMessage("No data to display");
		plot.setLabelGenerator(null);
		return chart;
	}
}
分享到:
评论

相关推荐

    grafana-piechart-panel-1.6.1.zip

    《Grafana Piechart Panel插件详解:1.6.1版本解析》 Grafana是一款广受欢迎的开源数据可视化工具,它允许用户通过自定义的仪表板展示各种数据源的实时信息。在众多的Grafana面板中,Piechart Panel(饼图面板)是...

    PieChart.zip

    `PieChart.zip` 文件包含了一个关于如何在Android应用中实现饼图的示例项目,下面将详细介绍如何在Android中使用饼图,并提供相关的编程知识。 1. **MPAndroidChart库** Android的官方SDK并没有内置饼图组件,但...

    MPAndroidChart饼图用法系列一

    pieChart.getLegend().setHorizontalAlignment(Legend.LegendHorizontalAlignment.CENTER); pieChart.getLegend().setVerticalAlignment(Legend.LegendVerticalAlignment.BOTTOM); pieChart.getLegend().setPosition...

    pieChart 3d示例 flax

    至于`maven`,它可能指的是Maven,一个Java项目管理和综合工具,可能用于构建和管理`flax`库或者与之相关的项目依赖。 总之,`pieChart 3d`示例利用`flax`库展示了如何有效地通过3D饼图进行数据可视化。这种技术在...

    Android-基于MPAndroidChart饼图添加指示线标签颜色让指示线颜色标签颜色和饼图区块颜色一致.

    pieChart.getDescription().setEnabled(false); pieChart.setExtraOffsets(5, 10, 5, 5); pieChart.setDragDecelerationFrictionCoef(0.95f); pieChart.setDrawHoleEnabled(true); pieChart.setHoleColor(Color....

    andorid-饼图带引导线.rar

    pieChart.setOnChartValueSelectedListener(new OnChartValueSelectedListener() { @Override public void onValueSelected(Entry entry, Highlight highlight) { // 获取选中的条目和对应位置 int index = ...

    matlab开发-标签库piechart3d

    在"标题"中提到的"标签库piechart3d"可能是一个自定义的MATLAB函数库,它扩展了默认的`pie3`功能,提供了更多的定制选项,如自定义标签、颜色、角度、透明度等。这有助于提高数据的可读性和可视化吸引力。 "描述"中...

    C# 3D 饼图 PieChart 三维

    在C#编程环境中,3D饼图(PieChart)是一种常用的数据可视化工具,它能够以立体的方式展示数据比例关系,使复杂的数据变得直观易懂。本文将深入探讨C#中创建3D饼图的关键知识点,包括3D效果的实现、数据绑定、自定义...

    android PieChartDemo饼图小例子

    可以通过调用`pieChart.animateX()`或`pieChart.animateY()`方法添加动画效果,使得数据变化更生动: ```java pieChart.animateX(1000); // 1秒的X轴动画 ``` 7. **标签和值**: 如果需要显示每个扇区的标签和...

    3D Pie Chart

    NULL 博文链接:https://yan3999.iteye.com/blog/1717789

    PieChart:教程“ Android中的统计图”,使用MPAndroidChart库实现PieChart

    pieChart.getDescription().setEnabled(false); // 关闭描述文本 pieChart.setDrawHoleEnabled(true); // 开启中心孔 pieChart.setHoleColorTransparent(true); // 透明中心孔 pieChart.setCenterText("饼图"); // ...

    直线统计图和弧线统计图

    pieChart.getDescription().setEnabled(false); pieChart.animateX(1000); pieChart.setEntryLabelColor(Color.WHITE); pieChart.setHoleColorTransparent(true); ``` 在创建PieData时,需要将各个数据项包装成...

    andorid-饼状图.rar

    7. **绘制图表**: 调用`pieChart.setData(pieData)`并使用`pieChart.invalidate()`刷新图表使其显示。 以下是一个简单的示例代码: ```java PieChart pieChart = findViewById(R.id.pie_chart); ArrayList...

    android仿支付宝账单统计图

    最后,为了实现统计图的更新,例如根据用户的账单数据实时刷新,可以调用`pieChart.notifyDataSetChanged()`和`pieChart.invalidate()`方法。 通过以上步骤,我们就成功创建了一个仿支付宝账单统计图。为了进一步...

    PieChart-master.zip

    3. **Canvas**: MiniCanvas是OpenHarmony中的画布组件,它允许开发者使用基本的绘图命令来绘制图形、文字等。通过Canvas,开发者可以实现自定义的图形绘制,包括线条、形状、渐变色等,为饼状图的个性化设计提供了...

    Android图表库MPAndroidChart.zip

    MPAndroidChart 是 Android 系统上一款开源的图表库。目前提供线图和饼图,支持选择、缩放和拖放。... PieChart (with selection, ...) ScatterChart (with squares, triangles, circles, ... and more)

    JFreeChart在JSP中的应用实例

    public class PieChart3DDemo1 extends JFrame { public PieChart3DDemo1(String title) { super(title); DefaultPieDataset dataset = createDataset(); JFreeChart chart = createChart(dataset); ChartPanel...

    android 饼图

    pieChart.getDescription().setEnabled(false); // 关闭描述文本 ``` 4. 设置数据:创建` PieData`对象,包含各个扇区的数据和颜色: ```java List<PieEntry> entries = new ArrayList(); entries.add(new PieEntry...

    jfreechart 曲线图 3d饼图 3d柱状图

    3. **3D饼图(PieChart.jpg)** JFreeChart的3D饼图可以通过`ChartFactory.createPieChart3D()`方法创建。你需要提供一个`PieDataset`,其中包含了各个饼图部分的键和值。键通常表示类别,值则表示每个类别的大小。...

    安卓开发-仿随手记的炫酷饼图.zip

    pieChart.getDescription().setEnabled(false); // 关闭描述文本 pieChart.setExtraOffsets(5, 10, 5, 5); // 设置边缘空白 pieChart.setDragDecimals(false); // 不允许拖动小块 pieChart....

Global site tag (gtag.js) - Google Analytics