日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

子弹图(Bullet chart)绘制很难吗?绘制技巧整理送你~~

發布時間:2024/9/15 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 子弹图(Bullet chart)绘制很难吗?绘制技巧整理送你~~ 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

(好久沒更新可視化繪制技巧了,繼續走著)

今天小編給大家介紹一下子彈圖(Bullet chart) 的繪制方法,主要內容包括:

  • 子彈圖(Bullet chart)簡單介紹

  • 子彈圖(Bullet chart)的R繪制技巧

  • 子彈圖(Bullet chart)的Python繪制技巧

子彈圖(Bullet chart)簡單介紹

子彈圖(Bullet chart) 給大多數據人的第一印象可能就只是簡單的柱形圖疊加,但其所使用的場景和表達的含義卻遠遠超過柱形圖,特別是在分析環比、同比時。子彈圖的主要構成元素和可視化表示如下:

  • 文字標簽和主體條柱

  • 刻度量表

  • 主要標記標識

  • 用于對比的標識(可選)

  • 定性范圍標識,一般2-5個即可。

標準子彈圖(Bullet chart)樣例表示

文末小編還給大家準備了一個介紹子彈圖(Bullet chart) 設計的pdf文件,感興趣的可以學習下(下載方式文末給出)~,更多關于子彈圖(Bullet chart)的介紹,小伙伴可自行探索哈~

子彈圖(Bullet chart)的R繪制技巧

得益于R語言在可視化繪制上的便捷性,小編這里分別提供R-ggplot2和R-bulletchartr包繪制子彈圖(Bullet chart) 的技巧分享。

R-ggplot2包繪制

R-ggplot2包繪制子彈圖(Bullet chart) 還是非常方便的,如下:

「樣例一」:

library(tidyverse) tibble(name?=?"Example",quant_value?=?75,qualitative?=?100 )?%>%?ggplot(aes(x?=?quant_value,?y?=?name))?+geom_col(aes(x?=?qualitative),?fill?=?"grey")?+geom_col(width?=?0.5,?fill?=?"black")?+coord_cartesian(ylim?=?c(0.3,?1.7))?+theme_minimal()?+theme(panel.grid.major.y?=?element_blank())Example01 Of Bullet chart in ggplot2

「樣例二」:Add a target

ex_df?<-?bind_rows(tibble(name?=?rep("Ex?1",?2),group?=?c("Qualitative",?"Measure"),color?=?c("grey",?"black"),value?=?c(100,?75),width?=?c(0.9,?0.5),target?=?rep(82,?2),ymin?=?rep(0.7,?2),ymax?=?rep(1.3,?2)),tibble(name?=?rep("Ex?2",?2),group?=?c("Qualitative",?"Measure"),color?=?c("grey",?"black"),value?=?c(88,?64),width?=?c(0.9,?0.5),target?=?rep(77,?2),ymin?=?rep(1.7,?2),ymax?=?rep(2.3,?2)) )ex_df?%>%?ggplot(aes(x?=?value,?y?=?name,?fill?=?color))?+geom_col(width?=?c(0.9,?0.5,?0.9,?0.5))?+geom_linerange(aes(x?=?target,?ymin?=?ymin,?ymax?=?ymax),size?=?2,?color?=?"red")?+coord_cartesian(ylim?=?c(0.3,?2.7))?+scale_fill_identity()?+theme_minimal()?+theme(panel.grid.major.y?=?element_blank())Example02 Of Bullet chart in ggplot2

而繪制其他多類別數據的方法也都是類似的,小伙伴們可自行測試。

R-bulletchartr包繪制

R-bulletchartr包則是專門用于繪制子彈圖(Bullet chart) 的第三方包,使用也非常方便,且其對繪圖數據的格式要求也比較低,詳細介紹如下:

「樣例一」:bullet_chart()

  • 數據預覽:

  • 繪制代碼

##?load?example?data load(read_example("bc_ex.rda"))bullet_chart(dataframe?=?bc_ex)Example Of bullet_chart()

「樣例二」:bullet_chart_wide()

  • 數據預覽:

  • 繪制代碼:

bullet_chart_wide(file_name?=?read_example("Indicators_Targets_ext.xlsx"),cal_type?=?"cal")Example Of bullet_chart_wide()

「樣例三」:bullet_chart_vline()

  • 數據預覽:

  • 繪制代碼:

bullet_chart_vline(file_name?=?read_example("Indicators_Targets_ext.xlsx"))Example Of bullet_chart_vline()

更多R-bulletchartr包其他繪圖函數和參數設置可參考R-bulletchartr包[1]

Python繪制

Python-matplotlib 繪制

之前小編有轉載過一篇文章專門介紹使用Matplotlib繪制子彈圖(Python-Matplotlib 子彈圖繪制),作者是定義bulletgraph()函數進行繪制,感興趣的小伙伴可以看下,這里就不再描述。

Python-plotly 繪制

作為Python交互式可視化繪制強大工具之一,plotly庫可以繪制多類圖表,當然也包括子彈圖(Bullet chart),如下:

「樣例一」:

import?plotly.graph_objects?as?gofig?=?go.Figure(go.Indicator(mode?=?"number+gauge+delta",?value?=?220,domain?=?{'x':?[0,?1],?'y':?[0,?1]},delta?=?{'reference':?280,?'position':?"top"},title?=?{'text':"<b>Profit</b><br><span style='color:?gray;?font-size:0.8em'>U.S.?$</span>",?'font':?{"size":?14}},gauge?=?{'shape':?"bullet",'axis':?{'range':?[None,?300]},'threshold':?{'line':?{'color':?"red",?'width':?2},'thickness':?0.75,?'value':?270},'bgcolor':?"white",'steps':?[{'range':?[0,?150],?'color':?"cyan"},{'range':?[150,?250],?'color':?"royalblue"}],'bar':?{'color':?"darkblue"}})) fig.update_layout(height?=?250) fig.show()Example01 Of Bullet chart in plotly

「樣例二」:Multi Bullet

import?plotly.graph_objects?as?gofig?=?go.Figure()fig.add_trace(go.Indicator(mode?=?"number+gauge+delta",?value?=?180,delta?=?{'reference':?200},domain?=?{'x':?[0.25,?1],?'y':?[0.08,?0.25]},title?=?{'text':?"Revenue"},gauge?=?{'shape':?"bullet",'axis':?{'range':?[None,?300]},'threshold':?{'line':?{'color':?"black",?'width':?2},'thickness':?0.75,'value':?170},'steps':?[{'range':?[0,?150],?'color':?"gray"},{'range':?[150,?250],?'color':?"lightgray"}],'bar':?{'color':?"black"}}))fig.add_trace(go.Indicator(mode?=?"number+gauge+delta",?value?=?35,delta?=?{'reference':?200},domain?=?{'x':?[0.25,?1],?'y':?[0.4,?0.6]},title?=?{'text':?"Profit"},gauge?=?{'shape':?"bullet",'axis':?{'range':?[None,?100]},'threshold':?{'line':?{'color':?"black",?'width':?2},'thickness':?0.75,'value':?50},'steps':?[{'range':?[0,?25],?'color':?"gray"},{'range':?[25,?75],?'color':?"lightgray"}],'bar':?{'color':?"black"}}))fig.add_trace(go.Indicator(mode?=?"number+gauge+delta",?value?=?220,delta?=?{'reference':?200},domain?=?{'x':?[0.25,?1],?'y':?[0.7,?0.9]},title?=?{'text'?:"Satisfaction"},gauge?=?{'shape':?"bullet",'axis':?{'range':?[None,?300]},'threshold':?{'line':?{'color':?"black",?'width':?2},'thickness':?0.75,'value':?210},'steps':?[{'range':?[0,?150],?'color':?"gray"},{'range':?[150,?250],?'color':?"lightgray"}],'bar':?{'color':?"black"}})) fig.update_layout(height?=?400?,?margin?=?{'t':0,?'b':0,?'l':0})fig.show()Example02 Of Bullet chart in plotly

Python-plotly庫繪圖功能還是非常強大的,后期公眾號會推出系列專題。更多plotly庫繪制子彈圖(Bullet chart) 可參考plotly庫繪制子彈圖[2]

總結

今天的這篇推文,小編簡單的介紹了子彈圖(Bullet chart) 的R和Python繪制方法,希望小伙伴們可以選擇自己喜歡的工具進行繪制哈~

參考資料

[1]

R-bulletchartr包官網: https://acdivocatech.github.io/bulletchartr/index.html。

[2]

plotly庫繪制子彈圖: https://plotly.com/python/bullet-charts/。

E?N?D

各位伙伴們好,詹帥本帥假期搭建了一個個人博客和小程序,匯集各種干貨和資源,也方便大家閱讀,感興趣的小伙伴請移步小程序體驗一下哦!(歡迎提建議)

推薦閱讀

牛逼!Python常用數據類型的基本操作(長文系列第①篇)

牛逼!Python的判斷、循環和各種表達式(長文系列第②篇)

牛逼!Python函數和文件操作(長文系列第③篇)

牛逼!Python錯誤、異常和模塊(長文系列第④篇)

總結

以上是生活随笔為你收集整理的子弹图(Bullet chart)绘制很难吗?绘制技巧整理送你~~的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 日日夜夜国产 | 国产又黄又爽 | 亚洲日本激情 | 日大逼 | 国产专区在线 | 99久国产 | 丁香六月婷婷综合 | 中文字幕在线视频免费观看 | 爽爽视频在线观看 | 欧美性生交xxxxx | 成人动漫亚洲 | 国产黄色精品视频 | 天天操欧美 | 诱惑の诱惑筱田优在线播放 | 日韩欧美四区 | 亚洲欧美一区二区三区四区 | 成人一级视频在线观看 | 国内精品国产三级国产aⅴ久 | 亚洲一区在线看 | 久久国产精彩视频 | 丰满少妇在线观看资源站 | 久久四虎 | 香蕉久久影院 | 美国成人免费视频 | 在线观看你懂的网站 | 久久香蕉精品视频 | 亚洲午夜在线视频 | 大吊一区二区三区 | 日本乱偷中文字幕 | 激情图片区 | av看片在线 | 欧美久久久久久久久久久 | aa级黄色片 | 久久久久亚洲av无码网站 | 肉色超薄丝袜脚交一区二区 | 婷婷深爱激情 | 欧美日韩激情一区 | 亚洲另类春色 | 妹子色综合 | 五月激情站 | 黄色大片免费看 | 在线观看av一区二区 | 日本大尺度床戏揉捏胸 | 青青草原综合网 | 久在线观看视频 | 黄色的视频网站 | 国产免费无码一区二区视频 | 波多野结衣在线视频播放 | 先锋资源网av | 狠狠躁18三区二区一区视频 | 日本成人免费网站 | 久久精品国产露脸对白 | 涩涩五月天 | 毛片少妇| 欧美三级网 | 久草新 | 日韩在线观看一区 | 国产麻豆剧传媒精品国产av | 相亲对象是问题学生在线观看 | 国产婷婷色一区二区在线观看 | 青青av| 娇妻第一次尝试交换的后果 | 亚洲一级一区 | 欧美三根一起进三p | 图片一区二区 | a成人在线 | 亚洲午夜精品视频 | 老牛影视少妇在线观看 | 蜜臀人妻四季av一区二区不卡 | 日本精品中文字幕 | 在线观看欧美视频 | 午夜视频福利网站 | 理论片在线观看视频 | 欧美丰满熟妇bbb久久久 | 四虎午夜 | 黄色网址在线免费 | 久久噜| 国产婷婷一区二区 | 特黄一级毛片 | 国产乱码在线 | 国产精品视频播放 | 超碰人人射| 日韩成人高清视频在线观看 | 波多野结衣一区二 | 日韩免费三级 | 自拍偷拍av| 国产一区二区三区四区视频 | 亚洲成人激情av | 老地方在线观看免费动漫 | 在线激情小视频 | 日韩一区在线免费观看 | 黄色亚洲网站 | 青青青草视频在线观看 | 欧美亚洲激情 | 手机在线看永久av片免费 | 日本精品视频在线 | 好妞色妞国产在线视频 | 欧美一级淫片免费视频魅影视频 | 操操操日日日 |