導航:首頁 > 操作系統 > android圖表庫

android圖表庫

發布時間:2023-09-08 23:57:28

『壹』 如何在android上將現有的數據,以圖表的形式展現在手機上。

主要思路是:

1. 把資料庫分解成幾個asset文件。

2. 當需要打開資料庫時,如果資料庫不存在,就把那幾個asset文件重新合並成一個資料庫文件。

3. 如果資料庫的版本改變了,就在onUpgrade()方法中把資料庫文件刪除掉。

下面是代碼:

//資料庫的預設路徑

private static finalString DB_PATH = "/data/data/com.mypackage.myapp/databases/";

private static finalString DB_NAME = "mydb.db";

private static finalint DB_VERSION = 2;

private static finalString DB_SPLIT_NAME = "mydb.db.00";

private static finalint DB_SPLIT_COUNT = 3;

private SQLiteDatabasem_database;

private final Contextm_context;

/**

* Constructor

*保存傳進來的context參數以用來訪問應用的asset和資源文件。

* @param context

*/

public MyDB(Contextcontext) {

super(context, DB_NAME, null, DB_VERSION);

this.m_context = context;

}

public static MyDBopenDatabaseReadOnly(Context context) {

MyDB db = new MyDB(context);

try {

db.createDataBase();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

db.openDataBase(SQLiteDatabase.OPEN_READONLY);

return db;

}

public static MyDBopenDatabaseReadWrite(Context context) {

MyDB db = new MyDB(context);

try {

db.createDataBase();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

db.openDataBase(SQLiteDatabase.OPEN_READWRITE);

return db;

}

/**

*創建一個空資料庫,用來存儲你已有的資料庫。

*/

public voidcreateDataBase() throws IOException{

boolean dbExist =checkDataBase();

if (dbExist) {

/*

**如果你的資料庫的版本改變了,調用這個方法確保在onUpgrade()被調用時

**傳進去的是可寫的資料庫。

『貳』 如何在android畫分析圖(例如 柱狀圖、趨勢圖、餅圖)

目前android上圖標引擎並不少見,像aChartEngine就能很好的完成繪圖:

aChartEngine支持:1、linechart(折線圖)2、areachart(面積圖;分區圖,對比圖)3、scatterchart(散點圖)4、timechart(時間圖;進度表)5、barchart(條形圖;柱狀圖)6、piechart(餅圖)7、bubblechart(氣泡圖)8、doughnutchart(圓環圖)9、range(high-low)barchart(范圍條形圖)10、dialchart/gauge(撥號盤/壓力表)11、combined(anycombinationofline,cubicline,scatter,bar,rangebar,bubble)chart(組合圖)12、cubiclinechart(立方折線圖)

上述所有支持的圖表類型,都可以包含多個系列,都支持水平(默認)或垂直方式展示圖表,並且支持許多其他的自定義功能。所有圖表都可以建立為一個view,也可以建立為一個用於啟動activity的intent.

下面是一個餅狀圖的源碼事例:

package org.achartengine.chartdemo.demo.chart;


import org.achartengine.ChartFactory;

import org.achartengine.renderer.DefaultRenderer;


import android.content.Context;

import android.content.Intent;

import android.graphics.Color;


public class BudgetPieChart extends AbstractDemoChart {

public String getName() {

return "Budget chart";

}


public String getDesc() {

return "The budget per project for this year (pie chart)";

}

public Intent execute(Context context) {

double[] values = new double[] { 12, 14, 11, 10, 19 };//餅圖分層5塊,每塊代表的數值

int[] colors = new int[] { Color.BLUE, Color.GREEN, Color.MAGENTA, Color.YELLOW, Color.CYAN };//每塊餅圖的顏色

DefaultRenderer renderer = buildCategoryRenderer(colors);

renderer.setZoomButtonsVisible(true);//設置顯示放大縮小按鈕

renderer.setZoomEnabled(true);//設置允許放大縮小.

renderer.setChartTitleTextSize(20);//設置圖表標題的文字大小

return ChartFactory.getPieChartIntent(context, buildCategoryDataset("Project budget", values),

renderer, "Budget");//構建Intent, buildCategoryDataset是調用AbstraDemoChart的構建方法.

}


}

『叄』 Android Studio自帶圖標庫和開源圖標庫怎麼使用

閱讀全文

與android圖表庫相關的資料

熱點內容
公會傳家寶如何發送伺服器 瀏覽:331
獲取應用列表安卓源碼 瀏覽:146
nodejs是如何在伺服器運行的 瀏覽:685
linux遠端 瀏覽:509
域名改了ip訪問不了伺服器地址 瀏覽:177
程序員超薄本2019 瀏覽:359
單片機載波產生 瀏覽:264
web專家php高級編程 瀏覽:657
如何解決apex伺服器 瀏覽:183
演算法工程師越老 瀏覽:814
蘿卜圈機器人編程教程 瀏覽:507
pcb的pdf輸出 瀏覽:721
廣東佛山租伺服器雲主機 瀏覽:934
程序員有趣的表情包 瀏覽:264
加密卡nfc復制後沒反應 瀏覽:602
如何把app資源庫裡面的東西藏起來 瀏覽:730
ui編程用什麼軟體 瀏覽:596
文件夾框選多個對象是什麼快捷鍵 瀏覽:704
python的unittest下載 瀏覽:817
圖像壓縮演算法python 瀏覽:236