- 浏览: 152096 次
- 性别:
-
文章分类
最新评论
-
yjp:
效果丢失了,也好不了多少
SWT中使用JFreeChart(无需SWT_AWT) -
vfbrhvfbgd:
LZ,您好,
在网上找到了很多类似你这样的代码,请问您这 ...
一个使用SWT Ribbon代替Eclipse-RCP上面Coolbar的例子~ -
sdyjmc:
我也在看,发现Search不起作用。msn:sdyjmc@16 ...
读jlibrary代码的部分疑问,希望有人解答~ -
alaham:
jlibray研究得如何了呢?权限问题解决了吗?
我目前也正 ...
读jlibrary代码的部分疑问,希望有人解答~ -
bbiao:
你把代码抄错了,范型是不可以这么定义的....
这种模式我也 ...
从Hibernate范型DAO设计打造的自用DAO
SWT中使用JFreeChart(无需SWT_AWT)
好像从1.03开始Jfc就已经提供了在SWT中使用JFC的专用包和类,只是没有人写这些东西而已~今天我就贴一些Demo,以后再也不用SWT_AWT了~
1
/**//* ===========================================================
2
* JFreeChart : a free chart library for the Java(tm) platform
3
* ===========================================================
4
*
5
* (C) Copyright 2000-2007, by Object Refinery Limited and Contributors.
6
*
7
* Project Info: http://www.jfree.org/jfreechart/index.html
8
*
9
* This library is free software; you can redistribute it and/or modify it
10
* under the terms of the GNU Lesser General Public License as published by
11
* the Free Software Foundation; either version 2.1 of the License, or
12
* (at your option) any later version.
13
*
14
* This library is distributed in the hope that it will be useful, but
15
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
16
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
17
* License for more details.
18
*
19
* You should have received a copy of the GNU Lesser General Public
20
* License along with this library; if not, write to the Free Software
21
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
22
* USA.
23
*
24
* [Java is a trademark or registered trademark of Sun Microsystems, Inc.
25
* in the United States and other countries.]
26
*
27
* ---------------------
28
* SWTBarChartDemo1.java
29
* ---------------------
30
* (C) Copyright 2006, 2007, by Object Refinery Limited and Contributors.
31
*
32
* Original Author: David Gilbert (for Object Refinery Limited);
33
* Contributor(s):
34
*
35
* Changes
36
* -------
37
* 23-Aug-2006 : New class (DG);
38
*
39
*/
40
41
package org.jfree.experimental.chart.swt.demo;
42
43
import java.awt.Color;
44
45
import org.eclipse.swt.SWT;
46
import org.eclipse.swt.layout.FillLayout;
47
import org.eclipse.swt.widgets.Display;
48
import org.eclipse.swt.widgets.Shell;
49
import org.jfree.chart.ChartFactory;
50
import org.jfree.chart.JFreeChart;
51
import org.jfree.chart.axis.CategoryAxis;
52
import org.jfree.chart.axis.CategoryLabelPositions;
53
import org.jfree.chart.axis.NumberAxis;
54
import org.jfree.chart.plot.CategoryPlot;
55
import org.jfree.chart.plot.PlotOrientation;
56
import org.jfree.chart.renderer.category.BarRenderer;
57
import org.jfree.data.category.CategoryDataset;
58
import org.jfree.data.category.DefaultCategoryDataset;
59
import org.jfree.experimental.chart.swt.ChartComposite;
60
61
/** *//**
62
* An SWT demo.
63
*/
64
public class SWTBarChartDemo1
{
65
66
/** *//**
67
* Returns a sample dataset.
68
*
69
* @return The dataset.
70
*/
71
private static CategoryDataset createDataset()
{
72
73
// row keys
74
String series1 = "First";
75
String series2 = "Second";
76
String series3 = "Third";
77
78
// column keys
79
String category1 = "Category 1";
80
String category2 = "Category 2";
81
String category3 = "Category 3";
82
String category4 = "Category 4";
83
String category5 = "Category 5";
84
85
// create the dataset
86
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
87
88
dataset.addValue(1.0, series1, category1);
89
dataset.addValue(4.0, series1, category2);
90
dataset.addValue(3.0, series1, category3);
91
dataset.addValue(5.0, series1, category4);
92
dataset.addValue(5.0, series1, category5);
93
94
dataset.addValue(5.0, series2, category1);
95
dataset.addValue(7.0, series2, category2);
96
dataset.addValue(6.0, series2, category3);
97
dataset.addValue(8.0, series2, category4);
98
dataset.addValue(4.0, series2, category5);
99
100
dataset.addValue(4.0, series3, category1);
101
dataset.addValue(3.0, series3, category2);
102
dataset.addValue(2.0, series3, category3);
103
dataset.addValue(3.0, series3, category4);
104
dataset.addValue(6.0, series3, category5);
105
106
return dataset;
107
108
}
109
110
/** *//**
111
* Creates a sample chart.
112
*
113
* @param dataset the dataset.
114
*
115
* @return The chart.
116
*/
117
private static JFreeChart createChart(CategoryDataset dataset)
{
118
119
// create the chart
120
JFreeChart chart = ChartFactory.createBarChart(
121
"Bar Chart Demo", // chart title
122
"Category", // domain axis label
123
"Value", // range axis label
124
dataset, // data
125
PlotOrientation.VERTICAL, // orientation
126
true, // include legend
127
true, // tooltips?
128
false // URLs?
129
);
130
131
// NOW DO SOME OPTIONAL CUSTOMISATION OF THE CHART
132
133
// set the background color for the chart
134
chart.setBackgroundPaint(Color.white);
135
136
// get a reference to the plot for further customisation
137
CategoryPlot plot = (CategoryPlot) chart.getPlot();
138
plot.setBackgroundPaint(Color.lightGray);
139
plot.setDomainGridlinePaint(Color.white);
140
plot.setDomainGridlinesVisible(true);
141
plot.setRangeGridlinePaint(Color.white);
142
143
// set the range axis to display integers only
144
final NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
145
rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
146
147
// disable bar outlines
148
BarRenderer renderer = (BarRenderer) plot.getRenderer();
149
renderer.setDrawBarOutline(false);
150
151
CategoryAxis domainAxis = plot.getDomainAxis();
152
domainAxis.setCategoryLabelPositions(
153
CategoryLabelPositions.createUpRotationLabelPositions(Math.PI / 6.0)
154
);
155
// OPTIONAL CUSTOMISATION COMPLETED.
156
157
return chart;
158
159
}
160
161
/** *//**
162
* Starting point for the demonstration application.
163
*
164
* @param args ignored.
165
*/
166
public static void main( String[] args )
167
{
168
JFreeChart chart = createChart(createDataset());
169
Display display = new Display();
170
Shell shell = new Shell(display);
171
shell.setSize(600, 300);
172
shell.setLayout(new FillLayout());
173
shell.setText("Test for jfreechart running with SWT");
174
final ChartComposite frame = new ChartComposite(shell, SWT.NONE, chart,
175
true);
176
frame.pack();
177
shell.open();
178
while (!shell.isDisposed())
{
179
if (!display.readAndDispatch())
180
display.sleep();
181
}
182![]()


2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61


62

63

64



65

66


67

68

69

70

71



72

73


74

75

76

77

78


79

80

81

82

83

84

85


86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110


111

112

113

114

115

116

117



118

119


120

121

122

123

124

125

126

127

128

129

130

131


132

133


134

135

136


137

138

139

140

141

142

143


144

145

146

147


148

149

150

151

152

153

154

155

156

157

158

159

160

161


162

163

164

165

166

167



168

169

170

171

172

173

174

175

176

177

178



179

180

181

182
发表评论
-
来自网络上的经典文章收藏帖(不断增加中... ...)
2007-05-15 09:14 1061教你如何使用JFace创建Wizards Creating J ... -
RCP程序怎样实现自适应分辩率最大化(增加版)
2007-05-15 14:02 1352交口称赞在BLOG中提到了一种让RCP最大化的方法: 在App ... -
如何在ViewPart上添加ViewToolBar
2007-05-15 17:58 3824ViewToolBar其实就是Actions。在ViewPar ... -
郁闷的Perspective
2007-05-15 18:11 1012下午正式开始RCP开发,于是乎轻车熟路的开始打基础框架。 ... -
读jlibrary代码的部分疑问,希望有人解答~
2007-05-18 10:30 1360昨天在Bolg中贴出来一个很不错的RCP项目http://jl ... -
简单应用Maven2
2007-05-18 13:54 888Maven2对项目的管理确实可以说是无微不至的,而且给出了大量 ... -
介绍一个好站
2007-05-20 10:42 838http://www.krugle.com/代码搜索工具,使用 ... -
Eclipse3.3m7 VS Eclipse3.2.2
2007-05-22 08:37 1138Eclipse3.3m7 VS Eclipse3.2.2没有深 ... -
西安java用户群成立~_~
2007-05-23 15:58 840西安java用户群,感谢dudu,为我们开通团队,所有西安ja ... -
RCP的异常
2007-05-25 12:53 931上次的一篇文章问到为什么TreeViewer没有刷新, ... -
正在规划一个Eclipse上看RSS的Plugin
2007-06-04 08:50 996目前正在规划阶段,初步想法是,实现一个周博通的EclipseP ... -
初识DB4O
2007-06-10 11:15 766DB4O? 新出的OODBMS~取谐音DB fo ... -
如何用WebStart部署RCP应用程序?
2007-06-11 17:19 950上传一份同事写的预研文档:WebStartToRCP.doc ... -
RCP开发者的好去处之ICON系列(持续更新中... ...)
2007-06-11 20:49 910为了找个合适的图片是不是头大的不像样子了?OK,我现在 ... -
庆祝一下~RCP开发者的福音到了!
2007-06-14 22:04 873今天在Eclipse站上学习如何使用Maven2管理Eclip ... -
再次理解Eclipse的类加载机制
2007-06-18 15:13 1107今天在写RCP的基础运行插件的时候,发现一个非常有意思的问题: ... -
插件开发依赖其他插件时一定要注意!
2007-06-19 14:18 2272插件开发依赖其他插件时,我们要在plugin.xml的depe ... -
RCP实践之软件架构
2007-06-19 21:22 701RCP还是新兴的东西,大家都是用它做做小东东,所以在网 ... -
RCP实践之第三方JAR包
2007-06-20 21:43 3210感谢大家对上一篇文章的拍砖,引起的反响不小,目的达到了 ... -
RCP实践之安全模型
2007-06-21 21:52 1123感谢大家最近对本 ...
相关推荐
今天遇到一个问题,就是要在一个Eclipse插件里显示JFreeChart的图形,因为后者是基于Java2D的,要把图形显示在SWT应用程序里需要利用SWT-AWT桥接器来实现,虽说桥接的方式多半会伴随着性能下降,但总归是一个解决...
以上就是SWT中一些常见的疑难点解答,包括Button的样式、Text的使用、Table的操作以及在SWT中显示AWT/Swing对象的方法。理解并掌握这些知识点将有助于提升在Eclipse环境下使用SWT开发GUI应用的能力。
用JFreeChart实现java报表开发(1) 作者:zuoxianghui 来源:blog 整理日期:2007-8-17 jfreechart,到http://www.jfree.org/下载最新的。 一、在web.xml文件中添加: <servlet-name>DisplayChart ...
- **SWT应用**:在Eclipse SWT环境中,JFreeChart也可以通过 SWT/AWT 桥接来创建和显示图表。 **4. 扩展和社区支持** JFreeChart拥有活跃的开发者社区,用户可以在其官方网站上找到详细的API文档、示例代码、用户...
5. **servlet.jar**:可能用于服务器端集成,使得 JFreeChart 可以在 Web 应用中使用。 6. **jfreechart-1.0.13-swt.jar** 和 **swtgraphics2d.jar**:这两个 JAR 文件与 SWT(标准小部件工具包)相关,允许 ...
在给定的部分内容中,展示了一个简单的使用 JFreeChart 绘制柱状图的例子。下面我们将对这段代码进行详细的解析: ##### 1. 导入必要的类 ```java import java.awt.Color; import java.awt.Component; import javax...
在本场景中,我们关注的是"scrollbar"与"jfreechart"的结合,特别是如何在Java环境中使用SWT(Standard Widget Toolkit)库来实现图表的滚动条功能。 JFreeChart是一个强大的Java图表库,它提供了各种图表类型,如...