當前位置:首頁 » 安卓系統 » android趨勢圖

android趨勢圖

發布時間: 2023-02-12 06:27:31

① android里,已知3個坐標(a,b)(c,d)(x,y),如何在XY坐標系中將3點相連繪制出線性趨勢圖顯示在頁面中

achartengine 你可以看一下這個 畫趨勢圖 統計信息直方圖等 都可以直接調用函數去畫,他還有畫時間圖,X軸為時間

② 關於android軟體編程中如何畫函數折線圖的問題

用Canvas的drawLine方法就可以了canvas.drawLine(startX, startY, stopX, stopY, paint);
startX, startY為起始坐標;
stopX, stopY為終點坐標;
paint就是一個Paint對象;
比如你的橫坐標的第一個坐標是(1, 2), 第二個坐標是(2, 5), 第三個坐標是(3, 10),那麼這段折線可以這樣畫:
canvas.drawLine(1,2,2,5,paint);
canvas.drawLine(2,5,3,10,paint);
以此類推,剩下的3段折線都可以這樣畫出來

③ Android MPAndroidChart 折線圖設置哪些屬性

在org.achartengine.renderer這個包里有一個類BasicStroke,可以改變線型(實線、虛線、點線),而折線圖中用的是XYMultipleSeriesRenderer這個類,它繼承自DefaultRenderer,這個與BasicStroke是一個包里的子類,DefaultRenderer有一個方法是setShowGridY(boolean showGrid),感覺在這個方法里肯定有設置線型的語句,但是我現在沒找到AChartEngine的具體五毛源碼,不知道這個方法具體是怎樣的,只能提供給你一個思路……我幾個月前也搗鼓過AChartEngine

④ android怎麼讓折線圖上方顯示數字

直接在旁邊寫數字就可以了。主要畫折線圖。
步驟一:折線圖的坐標集
首先應該創建 XYSeries對象 : 用於提供繪制的點集合的數據
XYSeries series = new XYSeries(titles[i]); // 根據每條線的名稱創建
將所有的坐標加入這個集合
series .add (xV[k], yV[k]);
XYMultipleSeriesDataset對象 用於 保存點集數據 ,包括每條曲線的X,Y坐標
// 用於數據的存放
XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
dataset .addSeries (series);
步驟二:折線圖的樣式集
定義每條曲線的顏色
int [] colors = new int [] {Color. BLUE ,Color. GREEN };
定義每條曲線的點的形狀
PointStyle [] styles =
new PointStyle []{ PointStyle . CIRCLE , PointStyle . DIAMOND };
曲線圖的格式,包括顏色,值的范圍,點和線的形狀等等 都封裝在 XYSeriesRender對象中,再將XYSeriesRender對象封裝在 XYMultipleSeriesRenderer 對象中
XYSeriesRenderer r = new XYSeriesRenderer();
r.setColor(colors[i]);
r.setPointStyle(styles[i]);
r.setFillPoints(fill);
XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer();
renderer.addSeriesRenderer(r);
設置折線圖名稱,坐標軸的名稱,坐標軸的起點重點,坐標軸的顏色,坐標軸上數字的顏色
setChartSettings(renderer, "Line Chart Demo" , "X" , "Y" , - 1 , 12, 0, 35 , Color. WHITE , Color. WHITE );
步驟三:顯示折線圖
View chart = ChartFactory. getLineChartView ( this , dataset, renderer);
setContentView(chart);

⑤ 如何在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 mpandroid橫坐標間隔不均勻折線圖怎麼讓

軟體版本:Office2007方法如下:1.在Excel中如果橫坐標是日期,系統會自動均勻排布日期,如下圖所示:2.右鍵點擊橫坐標,選擇「設置坐標軸格式」:3.將坐標軸類型改成「文本類型」,即可讓日期按照選定的數據排布:

⑦ Android自定義View - 仿支付寶月賬單折線圖

支付寶有個查看月賬單的功能,最近一直在學習自定義View,於是就嘗試著自己實現了一個類似的折線圖。

下面是支付寶消費分析功能截圖和自己實現的折線效果截圖:

在繪制折線圖之前首先要分析折線圖需要繪制哪些部分以及如何繪制這些部分,確定了各繪制部分及繪制方法之後再開始具體的繪制。

將折線圖分為四個繪制區域:

現在已經知道了折線需要繪制哪些部分以及各部分的繪制方法,接下來要做的就是確定繪制折線各部分所需要的點的坐標。

從下面繪制分析圖可以直觀地看到月份文字中間點x坐標,數據點x坐標,數據點處圓的圓心x坐標以及消費金額文字中間點x坐標的值是相同的,所以只需要確定數據點的x坐標就行了。

觀察支付寶的折線圖可以看到第一個數據點距離屏幕左側和最後一個數據點距離屏幕右側的寬度是相等的,我們將這個寬度定義為基準寬度mBaseWidth。

將相鄰兩個數據點之間的寬度定義為mItemWidth,仔細觀察可以看出這個寬度大概為 3*mBaseWidth,因為折線圖固定顯示5個月份的數據,所以mBaseWidth值就確定了:

得到mBaseWidth值後各個數據點的x坐標也就確定了:

從支付寶折線圖上可以看到月份的y坐標是固定的,數據點的y坐標是通過消費金額確定的,圓心y坐標和消費金額文字y坐標都依賴於數據點的y坐標。

下面我們就來分別確定月份的y坐標和數據點的y坐標。在繪制分析圖中定義了幾個參考變數,各變數的含義如下:

從繪制分析圖可以看到月份的y坐標范圍在區間 [3/4*mHeight, mHeight] 之間,只要以 3/4*mHeight 為基準值加上一個偏移量就可得到月份的y軸坐標,那麼如何確定這個偏移量的大小呢?

首先通過下面的方法計算月份文字的高度:

計算出文字高度後選取 fontHeight * 3 / 2 作為偏移量,讓月份文字的頂部距離 3/4*mWidth 基準線的高度剛好為 fontHeight。這個偏移量的值不是固定的,如果對最後繪制效果不滿意,可以調整該值到自己滿意的效果。

依然先定義一些控制參數:

先說數據點y坐標的確定方法,接下來再給出分析:

從計算公式可以看出數據點y坐標是通過mMaxLineHeight減去一個偏移量得到的,只需要確定偏移量的計算方法就可以了。

首先計算出當前月消費金額和最低消費金額的差值,然後用這個差值除以消費金額的極差mBillRange得到一個比例值,再用這個比例值去乘以mMaxLineSpace就是偏移值,然後用mMaxLineHeight減去偏移值就是數據點的y軸坐標。

數據點y坐標確定之後其它幾個點的坐標也就確定了。圓心的y坐標就是數據點y坐標,消費金額文字y坐標通過數據點y坐標減去消費金額文字的 fontHeight * 3 / 2得到。

上面得到的僅僅是在賬單金額已經出來情況下數據點的y坐標,那麼月份的消費金額數還沒出來時數據點y坐標該如何確定呢?因為只是為了演示效果,所以我採用下面的計算方法來得到未出賬單月份的數據點y坐標。

確定繪制點的坐標之後,剩下的就是一些需要注意的細節,比如已出賬單月份數據點處的圓是實心的,未出賬單月份數據點處的圓是空心的。還有數據點之間的連線有虛線和實線之分,實線的顏色也有不同,繪制的時候注意這些細節就可以了。

順帶介紹一下Android中虛線繪制是通過設置畫筆的路徑效果來實現的:

關於DashPathEffect可以參考我的另一篇文章 Android PathEffect - DashPathEffect 了解一下。

折線圖的目的是學習繪制自定義View,跟支付寶的實際邏輯肯定是完全不同的。另外目前項目並沒有並沒有在onMeasure進行特殊的繪制處理,等以後再優化改進。

項目地址: https://github.com/IvanRich/MonthBill

2017-06-20 增加onMeasure測量過程的處理 diff

⑧ android studio 怎麼根據數據畫折線圖

你可以上github上找找相關的開源框架。Android studio上沒有現成的控制項能這么做,都是要自己重新寫相關View。

⑨ Android除了MPAndroidChart這個是畫柱狀圖折線圖,還有其他第三方的嗎

WilliamChart也不錯,github上可以下載

⑩ Android 較為復雜的趨勢圖和扇形圖

記錄一次最近項目中使用到的趨勢圖和扇形圖的實現經歷

使用這個庫實現的是扇形圖,效果如下:

使用這個實現的是趨勢圖,效果如下:

熱點內容
入門c語言設計 發布:2025-05-17 12:08:31 瀏覽:40
c3演算法 發布:2025-05-17 12:04:19 瀏覽:364
phprecv 發布:2025-05-17 11:55:00 瀏覽:610
福建時鍾監控網關伺服器雲主機 發布:2025-05-17 11:54:28 瀏覽:248
c資料庫壓縮 發布:2025-05-17 11:39:22 瀏覽:960
安卓手機如何連接音響功放 發布:2025-05-17 11:37:48 瀏覽:958
破解exe加密視頻 發布:2025-05-17 11:23:41 瀏覽:976
我的世界伺服器圈太大了怎麼辦 發布:2025-05-17 11:15:21 瀏覽:614
便宜的免費雲伺服器 發布:2025-05-17 11:08:50 瀏覽:779
中國頂級dhcp解析伺服器地址 發布:2025-05-17 11:06:27 瀏覽:36