怎樣用 Excel 做出這樣的圖?
還是說這樣的圖只能用PS來製作???
用excel(多圖)
第一步,輸入數據,發布時間是自己估的,懶得一個個查了...大家不要學我
第二步,插入圖表的bubble圖,選平面的那種,當然你要是喜歡一顆一顆還發光的我也沒意見..
第三步,其實出來會是一張完全空白的表格,在表格白框框裡面右鍵,選擇數據
一般來說,excel都是直接選中數據再插入圖表,但是你會發現bubble圖很特殊,excel會搞不清楚哪個是哪個,經常出來的東西就是一坨翔...建議這種圖還是手動選擇數據,勤勞致富
第四步,系列名稱隨便你,可以空著,X軸是時間(用小數形式更好調整),Y軸是用戶量,Bubble的大小也是用戶量。然後ok就能看到下面這張看上去差不多但是丑爆了的表
第五步,調整格式
縱坐標格式之範圍
縱坐標格式之顏色
縱坐標格式之調用小箭頭,通過End type, end size來調,結果如下圖噢
第七步,和剛才一樣的流程調整橫坐標,刪除數據標籤,調用小箭頭~~
第八步,插入文本框,放起始時間和結束時間和「上線時間」的字樣
這裡其實是可以通過數據直接設置,而不是手動加。但因為是用小數表示時間的,所以由於格式問題使得通過數據設置比較麻煩...我說不明白了T T
反正如果你有心的話可以自己比較一下,不同情況用不同的方法啦
第九步,上色
這張圖的邏輯是採用APP自己的顏色來給bubble上色,UC是橙色的,新浪是紅色的,微信是綠色的,你看到的我是藍色的...
對著你要上色的bubble點一下選中所有圖案,再點一下選擇當下bubble(注意是再點一下,不是雙擊,要停頓噢~~),直接格式設置
第十步,完成上色之後,用文本框添加文字標籤(這一步效率非常渣,我真的只會用文本框一個一個改,淚目
哪位同學有更快的方法請告訴我!)
最後,哪裡看不順眼再微調下就行了,成果圖如下:
第十一步,前面說到這張圖的邏輯就是APP自己的顏色,
excel畫圖神奇的地方就是可以用顏色來表示邏輯關係,所以你還可以嘗試別的
比如,你的重點關注對象是美圖秀秀和其餘APP的比較,那麼:
再比如,題圖表格的標題有第一梯隊和第二梯隊之分,所以你可以:
其實我覺得既然圖上有了數據標籤,縱坐標就比較沒有意義,所以你會發現我把縱坐標都刪了
最後,我想說....這種圖用PS要怎麼搞啊= =""
=======================================
6.22 update
1 感謝很多PS/AI耍得很厲害的同學,可以通過把數據比變成面積比來設置泡泡大小
2 感謝 @LuciferSheng 提醒,日期寫成了20011..作為強迫症...我改好了
3 感謝@李超群,文字標籤可以使用一個叫XY Chart Labeler的插件,下載地址如下:
The XY Chart Labeler Add-in
我的excel是2010版,據說2013版自帶文字標籤功能
我試了下,貌似一組數據是不能同時插入兩組數據標籤的,所以我把兩組合併在一起,中間用空格分開
插入數據標籤以後,回車分行,批量修改格式,再微調下位置就OK啦
=============感謝 @謝佳的辛勤付出,不好意思我輕輕地站在了你的肩上。。。
以下教程送給看了 @謝佳 童鞋答案仍摸不著頭腦或者手都不想動的懶人們:)===============
環境:MS Excel 2010
1. 創建新文檔,存儲為「熱心匿名用戶的泡泡圖.xlsm」。
在A、B、C列輸入原始數據(必須按圖示格式:A列名稱,B列數值,C列日期)。注意B列第一單元格請輸入表格名稱。
2. Alt+F11呼喚神龍。猛擊左欄「ThisWorkBook」。
3. 將以下代碼複製在右欄:
Sub bubble()
Dim Bot_A As Integer, Bot_B As Integer, Bot_C As Integer
Bot_A = ActiveSheet.range("A65535").End(xlUp).row
Bot_B = ActiveSheet.range("B65535").End(xlUp).row
Bot_C = ActiveSheet.range("C65535").End(xlUp).row
"sort data
Columns("C:C").Select
ActiveSheet.sort.SortFields.Clear
ActiveSheet.sort.SortFields.ADD Key:=range("C1"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
Cells(1, 10).Select " any cell but within data range is ok
"add chart
ActiveSheet.Shapes.AddChart.Select
With ActiveChart
.ChartType = xlBubble
.SeriesCollection.NewSeries
.SeriesCollection(1).Name = Cells(1, 2).value
.SeriesCollection(1).XValues = "=" ActiveSheet.Name "!" "$C$2:$C$" Bot_C ""
.SeriesCollection(1).Values = "=" ActiveSheet.Name "!" "$B$2:$B$" Bot_B ""
.SeriesCollection(1).BubbleSizes = "=" ActiveSheet.Name "!" "$B$2:$B$" Bot_B ""
.SetElement (msoElementDataLabelTop)
"auto fill color
.ChartGroups(1).VaryByCategories = True
"del Legend
.Legend.Delete
End With
"modify text
Dim i As Integer
ActiveChart.SeriesCollection(1).Select
For i = 2 To Bot_A
ActiveChart.SeriesCollection(1).Points(i - 1).DataLabel.Text = Cells(i, 1) " " Cells(i, 2)
Next i
End Sub
Ctr+S保存。
4. 請仍然停留在代碼界面,輕輕按下「F5」。是的,一定要帶點溫柔。
你看到了以下結果:
5. 亂碼?!!!!請淡定。
6. 手動把圖表大小調整一下唄。引用一樓的話,叫「勤勞致富」。
是不是有感覺一點。
希望能幫到你。
=================再次鳴謝 @謝佳。我是看了她的答案才會的。===================
最後!這只是個雕蟲小技耳。
請大家善待程序員。
excel2013 自帶 【power view報告】 功能,加上時間欄位,還能做成動態氣泡圖。
update:詳細的製作方法我寫了一篇小文供大家參閱 【EXCEL】利用Power View作動態氣泡圖 - 陳熊貓 - 知乎專欄不就是散點圖,將Excel導入me.bdp.cn,拖拽數據,選擇散點圖,即可實現~
這個圖在Excel里就可以畫,插入氣泡圖,再簡單的設置就可以了。
只是在Excel2010版里設圖中的數據標籤時,不能直接選擇單元格區域,要麻煩一點,而Excel2016中,由於可以指定數據標籤鏈接的單元格,很方便。
模擬的表格如下:
製作後效果如下圖:
下面介紹詳細製作過程:
- 步驟1:選中A1:C11單元格區域,插入--其他圖表--氣泡圖
生成的圖表如下圖。
- 步驟2:選中圖表,點擊圖表工具菜單(設計選項卡)--選擇數據--編輯數據
- 步驟3:在彈出的「編輯數據系列」對話框,按下圖設置
將X軸系列值設置為:=Sheet1!$B$2:$B$11
將Y軸系列值設置為:=Sheet1!$C$2:$C$11
將系列氣泡大小設置為:=Sheet1!$C$2:$C$11
設置後如圖:
這時圖表已經具備題中的大致模樣了。
- 步驟4:選中圖中的任一氣泡,點擊「圖表工具」菜單的「布局」選項卡,點擊「數據標籤」,添加數據標籤並將其設置為居中。
設置後,如下圖:
此圖不符合我們的要求,選中數據標籤,點擊右鍵--設置數據標籤格式,在Excel2010版中即使將X值和系列名稱均勾選上,也無法將A列項目添加到數據標籤
因此我們只有採取鏈接單元格的方式來添加符合要求的數據標籤。
- 步驟5:在D2單元格輸入公式=A2","C2,然後下拉填充。
然後,點擊二次(不是雙擊)2014年8月那個氣泡的數據標籤,然後在編輯欄輸入公式=Sheet1!$D$2,即可將數據標籤鏈接到D2單元格。同樣的,將其他氣泡鏈接到D列對應單元格。
說明:
如果使用的是Excel2016版,就不用使用鏈接方法,可直接將數據標籤設置為A2:A11單元格區域:
設置後:圖表效果如下圖:
- 步驟6、將圖例「生產數量」刪除,並將圖表拖寬,發現氣泡與相對應的月份不在一條垂直線上,所以需要將橫軸的最大值、最小值、主要刻度(61大約為二個月天數30+31)修改一下:
設置後效果如下圖
- 步驟7:然後將橫坐標軸和縱坐標軸設置為燕尾箭頭,並刪除網格線。
進行美化後效果如下圖:
或者三維氣泡效果如下圖
[Excel]三招讓你快速添加氣泡圖標籤
「 製作過氣泡圖或者散點圖的小夥伴一定碰到過一個頭疼的問題:如何才能給氣泡圖或者散點圖添加標籤?難道只能逐一添加? 本期火箭君就要介紹3招讓你擁有快速添加氣泡圖標籤的技能。
01 利用VBA
在VBA中插入一個模塊,並添加以下宏命令:
Sub AttachLabelsToPoints()
"定義變數.
Dim Counter As Integer, ChartName As String, xVals As String
"宏運行時禁止屏幕刷新.
Application.ScreenUpdating = False
"將第一系列的圖表公式存儲為xVals.
xVals = ActiveChart.SeriesCollection(1).Formula
"抽取出氣泡圖中數據的區域.
xVals = Mid(xVals, InStr(InStr(xVals, ","), xVals,_
Mid(Left(xVals, InStr(xVals, "!") - 1), 9)))
xVals = Left(xVals, InStr(InStr(xVals, "!"), xVals, ",") - 1)
Do While Left(xVals, 1) = ","
xVals = Mid(xVals, 2)
Loop
"將每個數據的標籤添加到圖表中.
For Counter=1 to Range(xVals).Cells.Count
ActiveChart.SeriesCollection(1).Points(Counter).HasDataLabel =True
ActiveChart.SeriesCollection(1).Points(Counter).DataLabel.Text = Range(xVals).Cells(Counter,1).Offset(0, -1).Value
Next CounterEnd Sub
然後運行這個命令即可。
不過要注意,要運行成功對於原數據的排列有所要求。如同上圖所示,原數據應該按照【標籤】|【x軸數據】|【y軸數據】,這樣的列順序進行排列。
02 利用XY Chart Labels工具
安裝完工具後,選中圖表,點擊Add Labels,再選擇標籤區域。完成。
03 利用JWalk Chart Tool工具 (非推薦)
這個工具也很簡單,載入後,你會看到一個新的載入項。選中圖表,點擊JWalk Chart Tools,在彈出的對話框中選擇第一個標籤欄Data Labels。然後再Data label range中選擇標籤所在的位置,即可。
細心的小夥伴可能注意到了,上述演示的系統和版本顯然和之前的不同。是的,因為我發現在這個插件居然在我的win8.1+Office2013中會報錯。估計是因為兼容性問題,畢竟插件作者的上次更新還是在2002年。。。不過在我的Win7+Office2010中還能繼續使用。因此目測這工具可能在較舊的系統和Office軟體版本中還能使用,至於具體版本么...小夥伴們自行嘗試吧!
想獲取文中提到的兩款插件嗎?
關注火箭君的公眾號,並在公眾號後台回復 氣泡圖插件 或 氣泡圖,我會告訴你這兩款軟體的下載鏈接哦~
喜歡我們就請關注我們吧~~
微信公眾號:效率火箭(ID:xlrocket)
關於Excel繪圖,強烈推薦一本書籍:EXCEL 2016圖表達人(增強版),上面有各種類型的繪圖,照著上面操作一遍,基本上80%的圖表你都可以做出來,如果你能夠在此基礎上深入思考,剩下的20%圖表,你同樣可以搞定。
氣泡圖可反映五維數據。橫軸、縱軸、氣泡的顏色、氣泡的大小,氣泡本身,都可以反映一個維度。一般的使用率為10%。雖然不是很高,但關鍵時刻,尤其做企業彙報的時候,很多時候一堆文字+報表+一堆餅柱線,也比不上一個氣泡圖好用。用excel做氣泡圖步驟還是比較多的。我一般用 數據視覺 |簡單 美觀 易上手 來做。
Step 1: 連接你的數據
這個簡單,把你要分析的文件從電腦拖到這裡就ok了:
Step 2:處理你的數據
這個看你的數據質量,如果欄位已經適合做分析,不需要清洗或是指標整合,就可以跳過。如果需要,這個也比較簡單的,依舊是拖拽+點擊來實現:
Step 3:可視化你的數據
點選欄位,自動出圖~
就這麼三步,如果你對自己想要分析、展現的東西胸有成竹,那麼做一個氣泡圖用不了2分鐘;
如果你對自己想要分析、展示什麼還沒有特別具體的想法, 這麼簡單的步驟,也足夠你「在實踐中出真知」啦。
題目中的圖表其實就是excel氣泡圖,通過定義兩個變數,來確定項目在坐標系裡的位置。把數據列好了,自動生成氣泡圖。excel氣泡圖可以直觀的展示項目之間的關係,尤其是把氣泡圖設置成四象限後,具體見下文的例子。
受百度指數工具的需求圖譜啟發,用excel簡單做了一個類似反應某自媒體與用戶關係強弱的圖表,大致利用四象限的氣泡圖來實現,下面簡單介紹。
第一步,羅列出所有項目,根據項目個數,這裡以用戶為中心,就將用戶盡量排於項目中間位置,如本例共27個項目,將用戶排於15位;
第二步,插入圖表,選擇氣泡圖,自定義數據名稱隨意,X軸選擇項目所在的V列,Y軸選擇數據w列,代表與用戶關聯性,氣泡大小則選擇x列;
第三步,氣泡圖初步形成。根據百度指數的需求圖譜效果,我們還需要對氣泡圖加工下:導入一個漸變同心圓背景(同心圓用excel畫3個橢圓,設置大小,同時水平 垂直居中對齊即可)以及將氣泡圖設置4象限,即可達到效果。
第四步、初步形成的氣泡圖只在一個象限內,與我們要的效果還差得遠,需要再設置四象限。這裡講下如何設置excel四象限。
根據數據表我們看到,處於中心位置的用戶對應的數據是15,45,70,分別表示橫坐標、縱坐標與氣泡大小。這時我們只需要設置X軸 Y軸的交點為15與45即可!
方法:雙擊X軸,在右邊坐標軸格式設置窗口講坐標軸值設為15,同理在設置Y軸時,該值設為45,這樣就把用戶項目設計成了坐標軸的中心點,即可完成四象限設置。
第五步、四象限設置好了,接下來就是美化下圖表效果。將坐標軸隱藏,設置好了背景圖片,再將氣泡對應項目換上相關APP圖片,最終的成品圖見下文:項目與中心用戶遠近表示APP用戶活躍度,項目圓大小代表APP訂閱用戶量,這對我們做演講、報告起到一個很直觀的展示作用。
幾個簡單實用的excel應用例舉,有興趣您也可以看看咯
Excel 有哪些可能需要熟練掌握而很多人不會的技能?
註冊登錄Create infographics,使用Chart的Bubble分類!!!
如圖所示,不過文字好像默認顯示在圖表下方,你可以研究一下!
看到這個題,弱弱推薦一款軟體Xcelsius 2008, 一款小眾但十分強大的繪圖軟體。。上個圖吧。。
主界面就是這樣的,支持很多圖表及圖形,包括Bubble Chart, Line Chart, Pie Chart等等.除此之外還有很多獨有的圖形,比如以面積變化反映數量變化的Area Chart..
以及以雷達或者風向玫瑰圖類型表達頻度的Radar Chart。。
總之,有各種各樣的圖表,完爆EXCEL。。其他的留待各位自行開發~
附上傳送門:xcelsius_百度搜索(官網沒找到,百度湊合一下吧)
以上~@謝佳 的答案已經說的很好了,我個別補充幾句
先上最終效果圖
內容和工作相關,圖表都是用PPT的插入圖標功能做的:湖北衛視不同欄目的觀眾性別年齡偏好
1.氣泡圖有一列是可以添加一列控制氣泡大小的,但是沒有看到她出現三列,我這裡做的是有的,就是「收視率」這一列,也就是說,氣泡圖有三個數字信息:X軸位置,Y軸位置,氣泡大小
我這裡X軸隊形的是性別偏好,Y軸是年齡偏好,氣泡大小對應的是欄目收視
2.我自己做的氣泡圖,每一個氣泡都是一個系列,所以要手動添加,因為是在PPT里做的這個圖,所以是手動添加一個一個的系列,包括系列名稱這些的,操作界面如下
3.背景圖是我自己設計好,在PPT里當做圖表背景插入的,大家也可以參考下。P.S,看樓上有人用插件和宏,覺得好高級,我個人還是傾向於用軟體自帶的好一些。
office excel 2010 圖表 氣泡圖
XY Chart Labeler Add-in
excel氣泡圖就可以
Excel 的製圖其實是非常強大的, 即使不用VBA也可以做出很多複雜並精確表達信息的圖。 看看達人們的作品吧:
https://sites.google.com/site/e90e50charts/
Tableau可以輕鬆做到
用函數PI即可得到
其實我感覺用EXCEL可以畫出來的啊,以前我做數據分析也是畫出來,因為電腦上只有excel
系統自帶畫圖就能搞定。
阿文信息圖表有教,課程轉讓需要的私信
推薦閱讀: