AndroidMPChart股票圖-分時(shí)圖01

AndroidMPChart股票圖-分時(shí)圖01 - 簡書

AndroidMPChart股票圖-分時(shí)圖02 - 簡書

AndroidMPChart股票圖-K線圖01 - 簡書

AndroidMPChart股票圖-K線圖02 - 簡書


AndroidMPChart是一款android圖表庫令蛉,它支持線性圖蕴纳,柱子圖消略,蠟燭圖和扇形圖

前段時(shí)間項(xiàng)目用到了AndroidMPChart來畫股票圖守谓,遇到了一些問題分享下。

分時(shí)圖:

我們在畫分時(shí)圖要和市面上的分時(shí)圖很類似钓株,而原始的mp框架無法滿足我們的需求实牡,則需要修改源碼了。

我們看下下面這個(gè)分時(shí)圖來怎么實(shí)現(xiàn)

分時(shí)圖

我們分析下這個(gè)圖怎么用mp來畫

1.外層有個(gè)邊框這個(gè)mp支持的不需要我們再去修改

2.有三條橫向的虛線享幽,mp里也是支持的叫做警戒線(這個(gè)類LimitLine)

? 2》LimitLine這個(gè)類它是畫警戒線的

如果我們要在LeftY添加警戒線則是這樣的

//第二個(gè)參數(shù)設(shè)置描述則就會顯示在左側(cè)的值

LimitLine limitLineMax=new LimitLine("警戒線值",“警戒線描述”);

//是否設(shè)置虛線顯示

limitLineMax.enableDashedLine(“線的長度”, “間隔”, “偏移量”);

//警戒線右側(cè)顯示值

第一步:我們在LimitLine類中定義這個(gè)變量并實(shí)現(xiàn)set/get方法


添加警戒線右側(cè)標(biāo)簽

第二步:在YAxisRenderer類中的renderLimitLines這個(gè)方法里添加


獲取右標(biāo)簽值

第三步:還是在這個(gè)方法內(nèi)找到畫標(biāo)簽的方法里添加畫右標(biāo)簽

注意這里需要判斷警戒線的位置我用的LEFT_TOP铲掐,LEFT_BOTTOM左上和左下


畫標(biāo)簽

設(shè)置完成就OK啦,我們回到警戒線里

//設(shè)置右邊標(biāo)簽值

limitLineMax.setmRightLabel(“右邊標(biāo)簽值”);

//設(shè)置標(biāo)簽顯示在警戒線下方

limitLineMax.setLabelPosition(LimitLine.LimitLabelPosition.LEFT_BOTTOM);

//添加警戒線值桩,3條虛線一樣的添加

axisLeft.addLimitLine(limitLine);

3.畫x軸的標(biāo)簽

原始mp的x軸標(biāo)簽都會超過最左邊和最右邊邊距摆霉,要實(shí)現(xiàn)上面的那種效果我們需要設(shè)置

xAxis.setAvoidFirstLastClipping(true);

設(shè)置這個(gè)方法之后最右邊的還是有問題我們需要修改源碼


改x軸標(biāo)簽

4.畫線的陰影填充背景漸變

在Drawable中定義一個(gè)漸變色的xml


set.setFillDrawable("獲取你定義的xml");

//開啟填充

set.setDrawFilled(true);

5.我們在畫分手圖的時(shí)候會有動態(tài)畫分時(shí)圖的需求,就是當(dāng)數(shù)據(jù)推送一個(gè)點(diǎn)的時(shí)候畫一個(gè)點(diǎn),而不是清空圖表從9點(diǎn)30從新畫携栋。我們知道股票圖一分鐘畫一個(gè)點(diǎn)(共242個(gè)點(diǎn))而一分鐘之內(nèi)則會推送好幾個(gè)點(diǎn)而取的是這個(gè)分鐘的最后一個(gè)點(diǎn)搭盾。我們要的效果就是在這一分鐘中推送過來的上下波動到這一分鐘完了再去畫這個(gè)點(diǎn)

//實(shí)現(xiàn)在一分鐘之內(nèi)上下波動

1.先獲取chartData,


2.然后再根據(jù)chartdata獲取相應(yīng)的dataset(每一個(gè)set代表一條線)


3.獲取當(dāng)前set的最后一個(gè)點(diǎn)索引


4.根據(jù)當(dāng)前set的最后一個(gè)索引獲取Entry


5.設(shè)置Y值

entryForIndex.setY(“推送的Y值”)

6.通知圖表刷新數(shù)據(jù)


//動態(tài)添加數(shù)據(jù)

1婉支,2鸯隅,3,跟實(shí)現(xiàn)在一分鐘之內(nèi)上下波動一樣

4.添加到最后一個(gè)索引里

dataSetByIndex.addEntry(indexLast向挖,“添加到值”)

5.刷新數(shù)據(jù)并將圖表移動到指定位置

mLineChart.moveViewTo(indexLast,"值"蝌以,YAxis.AxisDependency.LEFT)


到這里就可以畫出上面的圖了及動態(tài)添加分時(shí)圖,下篇文章我說說怎么畫高亮線何之。

有問題麻煩提出交流共同學(xué)習(xí)跟畅。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市溶推,隨后出現(xiàn)的幾起案子徊件,更是在濱河造成了極大的恐慌,老刑警劉巖蒜危,帶你破解...
    沈念sama閱讀 217,185評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件虱痕,死亡現(xiàn)場離奇詭異,居然都是意外死亡辐赞,警方通過查閱死者的電腦和手機(jī)部翘,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,652評論 3 393
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來响委,“玉大人略就,你說我怎么就攤上這事』尉疲” “怎么了?”我有些...
    開封第一講書人閱讀 163,524評論 0 353
  • 文/不壞的土叔 我叫張陵窄绒,是天一觀的道長贝次。 經(jīng)常有香客問我,道長彰导,這世上最難降的妖魔是什么蛔翅? 我笑而不...
    開封第一講書人閱讀 58,339評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮位谋,結(jié)果婚禮上山析,老公的妹妹穿的比我還像新娘。我一直安慰自己掏父,他們只是感情好笋轨,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,387評論 6 391
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般爵政。 火紅的嫁衣襯著肌膚如雪仅讽。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,287評論 1 301
  • 那天钾挟,我揣著相機(jī)與錄音洁灵,去河邊找鬼。 笑死掺出,一個(gè)胖子當(dāng)著我的面吹牛徽千,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播汤锨,決...
    沈念sama閱讀 40,130評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼双抽,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了泥畅?” 一聲冷哼從身側(cè)響起荠诬,我...
    開封第一講書人閱讀 38,985評論 0 275
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎位仁,沒想到半個(gè)月后柑贞,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,420評論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡聂抢,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,617評論 3 334
  • 正文 我和宋清朗相戀三年钧嘶,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片琳疏。...
    茶點(diǎn)故事閱讀 39,779評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡有决,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出空盼,到底是詐尸還是另有隱情书幕,我是刑警寧澤,帶...
    沈念sama閱讀 35,477評論 5 345
  • 正文 年R本政府宣布揽趾,位于F島的核電站台汇,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏篱瞎。R本人自食惡果不足惜苟呐,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,088評論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望俐筋。 院中可真熱鬧牵素,春花似錦、人聲如沸澄者。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,716評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至腰奋,卻和暖如春单起,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背劣坊。 一陣腳步聲響...
    開封第一講書人閱讀 32,857評論 1 269
  • 我被黑心中介騙來泰國打工嘀倒, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人局冰。 一個(gè)月前我還...
    沈念sama閱讀 47,876評論 2 370
  • 正文 我出身青樓测蘑,卻偏偏與公主長得像,于是被迫代替她去往敵國和親康二。 傳聞我的和親對象是個(gè)殘疾皇子碳胳,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,700評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 開始 ####安裝 為了使用 LineChart, BarChart, ScatterChart, CandleS...
    帥氣的豬豬閱讀 8,458評論 0 1
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)沫勿,斷路器挨约,智...
    卡卡羅2017閱讀 134,654評論 18 139
  • 你是不是覺得寫一段故事是個(gè)特別麻煩的事兒诫惭,你壓根都不知道從哪兒開始。 我從《開發(fā)故事創(chuàng)意》這本書獲得的啟發(fā)是蔓挖,沒準(zhǔn)...
    聞熙閱讀 289評論 0 0
  • 一切都在變好夕土。 現(xiàn)有的已經(jīng)很好了,只是需要整理和清潔一下瘟判,拿東西擦擦花盆怨绣。把石頭里的煙灰弄出來。澆一些水拷获。
    雨季和海風(fēng)閱讀 145評論 2 0
  • 前日迎來寒露篮撑, 昨夜凄風(fēng)殘霧。 晨雨降無休匆瓜, 一步出門三顧咽扇。 秋褲, 秋褲陕壹, 秋水望穿何處?
    任爾風(fēng)云我自逍閱讀 491評論 6 6