首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 程式設計入門

網頁發布統計圖表:Java Applet 繪圖實作教學

     編輯:Java 程式設計入門

引言

統計資訊說服力強,曲線圖最直觀。本文教導用 Java Applet 繪製統計曲線,嵌入 HTML 發布。參考文獻 [1] 用 OLE 工具,本文採 Java 繪圖支援。

Java 編程概述

1. 語言規範

Java 繼承 C++ 基礎語法,摒棄預編譯、巨集、指標、多重繼承等複雜特性,引入介面、套件、結構中立、安全性、多執行緒、網路通訊等現代特性。

2. JDK 發展史

從 1.0.3α 到 1.0、1.1 版,套件架構演進。本文程式基於 1.0 版撰寫,版本間兼容性需注意。

設計目標與程式構思

  • 統計標題與資料由 HTML <param> 提供,資料筆數不限。
  • 依資料值繪製帶刻度 X、Y 軸。
  • 連線資料點並標示座標值。
  • 提侏三組曲線切換選擇。

兩個類別協作:Curve 處理繪圖邏輯,Plot 繼承 Applet 呼叫 Curve 完成繪製。

Curve 類別核心實作

(1) 基類

繼承 Object (可省略)。

(2) 繪圖環境

Graphics 類別抽象各平台繪圖裝置環境,對應 Windows GDI Device Context。建構子接收 Plot 的 Graphics 物件供繪圖方法使用。

(3) 繪圖演算法 — 顯示資料範例

public synchronized void showData(Vector v) {
    float maxY = 0;
    myGC.setColor(Color.red);
    int xPoint, yPoint;
    // 尋找最大值
    for (int i=0; i maxY) maxY = temp;
    }
    // 繪製資料點、連線、標示數值
    xPoint = xOrigin + (xSpacing/2);
    int oldX=0, oldY=0;
    for (int j=0; j

Plot 類別 (Applet) 核心實作

(1) 繼承 Applet

唯一繼承 Applet 的類別,類名決定 .class 檔名 (如 Plot.class),須宣告 public。

(2) 使用者介面 — 單選鈕切換曲線

用 Checkbox + CheckboxGroup 實現單選功能。

(3) 版面配置 — BorderLayout + GridLayout

Applet 設 BorderLayout,建立 Panel 含 3 個單選鈕,設 GridLayout(1,3),加入 South 區域。

(4) 讀取 HTML 參數

  • readStringData(String s):讀取標題,格式 <param name="1-DESC" value="每月訪問者統計">
  • readData(String s):讀取數值向量,格式 <param name="1-1" value="10">,循環讀取直到無參數。

(5) 事件處理 — action() 方法

JDK 1.0 無訊息映射表,覆寫 action(Event e, Object o),判斷觸發的 Checkbox,讀取對應資料與標題,呼叫 Curve 繪圖方法並 repaint()。

HTML 嵌入範例

<applet code="Plot.class" width=350 height=200>
<param name="1-DESC" value="每月訪問者統計">
<param name="1-1" value="10"> <param name="1-2" value="4"> ...
<param name="2-DESC" value="每年訪問者統計"> ...
<param name="3-DESC" value="一次購買稅統計"> ...
</applet>

執行結果見原文附圖。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved