python读取excel数据并进行数据可视化_用Python处理Excel的数据,并将之可视化
用Python代碼作可視化,如果每次都在代碼中以列表的形式來一個一個字符地敲,無異乎浪費時間。我們都知道,在Excel中,數據是以DataFrame(一維的Series是特殊的DataFrame)形式作存儲的,而我們在代碼中輸入的形式一般都是手工地以list的形式來輸入。有沒有什么快捷的方式呢?
今天下午隨意上網搜索了一下“Python 柱形圖”,就發現了這篇文章(https://www.cnblogs.com/hhh188764/p/13213299.html)。經過參考,自己略作修改,于是有了這篇文章。
具體如下:
1. 先從Excel中加載數據:
# 加載數據
import pandas as pd
df = pd.read_excel(r"D:\我的文檔\MySQL.xlsx", sheet_name = 1)
df
2. 簡單地做一下數據清洗:
# 按 num 字段排降序
df.sort_values(by = "num",ascending = False)
3. 做可視化輸出
3.1 繪制一個單系列的柱形圖,簡單對比一下各種水果單品的銷售(數量)狀況
from pyecharts.charts import Bar
from pyecharts import options as opts
c = (
#創建柱圖對象,并設置大小,也可以不設置,直接使用默認大小即可
Bar(init_opts=opts.InitOpts(width="700px", height="500px"))
#設置X軸數據系列,只取前10個數據,并轉為列表格式
.add_xaxis(df.goods[:10].tolist())
#設置Y軸數據系列及顯示顏色,只取前10個數據,并轉為列表格式
.add_yaxis("銷售數量", df.num[:10].tolist())
# 設置圖表標題及位置
.set_global_opts(title_opts=opts.TitleOpts(title="TOP10水果大單品的銷售數量",pos_left="left"))
#通過render()方法將柱圖在Web中渲染為html
# .render("柱形圖.html")
)
# 直接在notebook中作渲染
c.render_notebook()
渲染效果:
3.2 繪制一個多數據系列的柱形圖,以便對比觀察分析各種水果的銷售金額&銷售數量
# 繪制的多數據系列柱形圖效果是這樣的:
from pyecharts.charts import Bar
from pyecharts import options as opts
c = (
#創建柱圖對象,并設置大小,也可以不設置,直接使用默認大小即可
Bar(init_opts=opts.InitOpts(width="900px", height="500px"))
#設置X軸數據系列,只取前10個數據,并轉為列表格式
.add_xaxis(df.goods[:10].tolist())
#設置Y軸數據系列及顯示顏色,只取前10個數據,并轉為列表格式
.add_yaxis("銷售金額", df.money[:10].tolist())
.add_yaxis("銷售數量", df.num[:10].tolist())
# 設置圖表標題及位置
.set_global_opts(title_opts=opts.TitleOpts(title="TOP10水果大單品的銷售業績",pos_left="left"))
#通過render()方法將柱圖在Web中渲染為html
# .render("柱形圖.html")
)
# 直接在notebook中作渲染
c.render_notebook()
渲染效果:
3.3 給柱形圖換顏色 color = "RGB值/十六進制顏色碼/形象色/英文首字母縮寫"
from pyecharts.charts import Bar
from pyecharts import options as opts
c = (
#創建柱圖對象,并設置大小,也可以不設置,直接使用默認大小即可
Bar(init_opts=opts.InitOpts(width="700px", height="500px"))
#設置X軸數據系列,只取前10個數據,并轉為列表格式
.add_xaxis(df.goods[:10].tolist())
#設置Y軸數據系列及顯示顏色,只取前10個數據,并轉為列表格式
.add_yaxis("銷售數量", df.num[:10].tolist(), color = "RGB(0, 0, 255)")
# 設置圖表標題及位置
.set_global_opts(title_opts=opts.TitleOpts(title="TOP10水果大單品的銷售數量",pos_left="left"))
#通過render()方法將柱圖在Web中渲染為html
# .render("柱形圖.html")
)
# 直接在notebook中作渲染
c.render_notebook()
渲染效果:
小結:
1. 以后再也不用在代碼中一個一個敲到手累了;
2. 大概今年四五月份,在我的好友“嚴小樣兒”的微信公眾號“統計與數據分析實戰”見過將DataFrame轉List的方法,但因為當時只是Pyecharts的小白(也是第一次在此公眾號認識到pyecharts這個庫,并被它的視覺沖擊性給迷住,從此就在pyecharts的路上越走越遠的)。只顧著囫圇吞棗地多學幾個可以裝X的炫酷圖表,而沒有細究其原理,所以基礎沒有真正地打扎實。這點以后確實需要注意改善!
總結
以上是生活随笔為你收集整理的python读取excel数据并进行数据可视化_用Python处理Excel的数据,并将之可视化的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机无法识别psp usb设备,PSP
- 下一篇: python控制安捷伦频谱仪_安捷伦频谱