如何用Excel畫出這樣的圖?
01-22
如圖,這個是自己手畫的,我不知道這叫什麼圖:
源數據格式是這個樣子:這個表記錄了某個IP上線/下線事件的開始時間、結束時間以及這個事件的持續時間。以一天的數據為例,如果使用excel畫出上圖?或者有什麼更好的表現形式?
首先回答第一個問題:如果使用excel畫出上圖?
你給出的這個圖在Excel里叫做堆積條形圖,如果數據量小的話,可是使用這樣的堆積條形圖生產如你所示的圖形。做法:1、兩列數據分別為IP1、IP2的online和offline的持續時長;2、選中兩列數據,插入圖標—條形圖——堆積條形圖然後,出現了這樣的狀況:這是什麼鬼東西?
這是因為Excel把橫坐標和列坐標搞混了,需要把行和列轉換一下。點擊下面的切換行和列。然後見證奇蹟的時刻到了,確定之後會生成一個五彩斑斕的堆積條形圖,顯然並不是我們想要的。再然後根據你的需要,修改圖表的顏色、修改橫坐標的數值。最終處理效果就是第一張圖那樣子的。當然這樣的做法並不是很好,總結一下:
1、無法完全做到和你一樣的效果:橫坐標的數值無法用時間表示,如果費用要時間的表示方法,只能自己貼文本框;2、只能處理少量數據,如果你導出的excel表中,online和offline的間隔頻率很高,那麼用這樣的方法,你懂的,雖然能做出來,但是效率極低;3、無法自動化生產,你今天做了個表,到二天導出來數據後還要重新做;
最好的方式就是使用VBA,以逸待勞,每天只需要導出來數據就可自動生成你想要的圖表。
當然,前提是首先你得會VBA。第二個問題:或者有什麼更好的表現形式?
個人理解,有。分析你的事件,只有兩個維度:online和offline。可以聯想到很多:二進位、高低電平、是與否……所以,看下圖:高電平表示online,低電平表示offline,橫軸表示持續的時長。這樣也是能夠非常清晰的表達出你想要的結果的。要問這樣的圖怎麼做出來?
答案是:我這圖就是在excel里利用表格的邊框一段一段畫出來的。這樣的圖也可以使用階梯圖的畫法製作,具體看下面的教程:
Excel2010使用X、Y誤差線畫步進圖(階梯圖,直角折線圖)
效率更高的、更自動化的方式,同樣是使用VBA。
當然,前提是首先你得會VBA。關於VBA,這個論壇里有很多高手,你可以求助一下。
http://club.excelhome.net/forum.php希望對你有幫助。覺得好麻煩啊。先處理數據,然後excel做柱狀堆積圖。然後用VBA根據數據是上線還是下線,批量調節圖表格式和數據系列顏色。思路大概是合併 甘特圖,我沒用VBA做過圖表,但是感覺還是可以的。
參考http://club.excelhome.net/thread-1073616-1-1.html
我個人覺得你可以借鑒一下 甘特圖的做法
沒人會嗎……好桑心,給點思路也好啊
堆積條形圖可以用,手動修改配色方案 即可。excel 2013
推薦閱讀:
※Excel 2007 插入折線圖時,由於數據太多,導致線堆疊過於緊密。請問是否有辦法讓每條線錯開,並展示在一個圖表裡?
※請問這樣的圖用excel可以做么?
※如何變成excel高手?
※如何快速的合併多個 Excel 工作簿成為一個工作簿?
※如何快速有效地提高 Excel 技能水平?
TAG:MicrosoftExcel | Excel圖表繪製 |