0

これが私のテーブルです(mysql内):

mysql> select device from user_management;
+--------+
| device |
+--------+
| APPLE  |
| HTC    |
| HTC    |
| NOKIA  |
| APPLE  |
| APPLE  |
+--------+
6 rows in set (0.00 sec)

私が持っているコードは

<%
String query1 = "select device,count(device) from user_management where  device='"+APPLE+"'";
JDBCCategoryDataset dataset = new JDBCCategoryDataset("jdbc:mysql://localhost:8080/apps","com.mysql.jdbc.Driver","root","root");
dataset.executeQuery(query1);
System.out.println("query1");
JFreeChart chart = ChartFactory.createBarChart3D("Device  Statictics","Device","Count",dataset,PlotOrientation.VERTICAL,true,true,false);
try
{
ChartUtilities.saveChartAsJPEG(new File("D:/dvc.png"),chart,500,400);
}
catch(IOException e)
{
System.out.println(".....there is a problem in your chart. ");
}
%>

そして、デバイス名(APPLE、NOKIA、SAMSUNG)に基づいて、「デバイスVSデバイスの数」を示す棒グラフを作成したいと思います。これをjspページに表示したい。

あなたの側からの入力は高く評価されます。

4

1 に答える 1

2

クエリで使用GROUP BYします。

SELECT device, count(device) FROM user_management GROUP BY device;

クエリを使用して から適切な JDBC データセットを構築し、org.jfree.data.jdbcそのデータセットを使用してグラフを作成します。

于 2012-05-28T13:50:01.710 に答える