最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

利用pyecharts讀取csv并進行數(shù)據(jù)統(tǒng)計可視化的實現(xiàn)

 更新時間:2020年04月17日 15:39:42   作者:Haor愛打雜  
這篇文章主要介紹了利用pyecharts讀取csv并進行數(shù)據(jù)統(tǒng)計可視化的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

因為需要一個html形式的數(shù)據(jù)統(tǒng)計界面,所以做了一個基于pyecharts包的可視化程序,當然matplotlib還是常用的數(shù)據(jù)可視化包,只不過各有優(yōu)劣;基本功能概述就是讀取csv文件數(shù)據(jù),對每列進行數(shù)據(jù)統(tǒng)計并可視化,最后形成html動態(tài)界面,選擇pyecharts的最主要原因就是這個動態(tài)界面簡直非常炫酷。

先上成品圖:

數(shù)據(jù)讀取和數(shù)據(jù)分析模塊:

#導入csv模塊
import csv
#導入可視化模塊
from matplotlib import pyplot as plt
from pylab import mpl
import numpy as np
import random
from pyecharts import Line,Pie,Grid,Bar,WordCloud
#指定文件名,然后使用 with open() as 打開

python_file = 'haiyang.csv'
#filename = 'release/111.csv'
#python3 LieCharts.py test_chart --python_file 'haiyang.csv'
with open(python_file) as f:
    #創(chuàng)建一個閱讀器:將f傳給csv.reader
    reader = csv.reader(f)
    #使用csv的next函數(shù),將reader傳給next,將返回文件的下一行
    header_row = next(reader)

    for index, column_header in enumerate(header_row):
        print(index, column_header)

    #讀取置信度
    #創(chuàng)建置信度的列表
    confidences =[]
    #創(chuàng)建風險等級數(shù)組
    highRisk = []
    middleRisk = []
    lowRisk = []
    noRisk = []
    person = []
    #創(chuàng)建時間點
    timePoint = []
    #文件信息
    fileInformation = []


    #遍歷reader的余下的所有行(next讀取了第一行,reader每次讀取后將返回下一行)
    for row in reader:

    # 下面就是對某一列數(shù)據(jù)進行遍歷,因為項目保密,就不列出具體代碼了,其實就是各種循環(huán)語句,大家根據(jù)自己的數(shù)據(jù)簡單寫一下就行
            
    fileInformation.append('某某某某')
    fileInformation.append(row[0])
    fileInformation.append(row[1])
    fileInformation.append(row[2])
    fileInformation.append(len(confidences))
    int_confidences = []
    for i in confidences:
  # 同上
    len_noRisk = len(noRisk)
    len_lowRisk = len(lowRisk)
    len_middleRisk = len(middleRisk)
    len_highRisk = len(highRisk)
    len_person = len(person)

    total = int(len_person+len_highRisk+len_middleRisk+len_lowRisk+len_noRisk)
    if (len_highRisk > total/2):
  # 同上

數(shù)據(jù)可視化模塊:

pie_title = Pie('某某某分析報表', "", title_pos='center',title_top="1%",title_text_size=42,subtitle_text_size=20)

value=[10000,6181,4386,4055,4000]
wordcloud=WordCloud(width=30,height=12,title="某某某某信息",title_pos="22%",title_top="12%",title_text_size=32)
wordcloud1=WordCloud(width=30,height=12,title="某某:"+fileInformation[1],title_pos="22%",title_top="22%",title_text_size=26)
wordcloud2=WordCloud(width=30,height=12,title="某某:"+fileInformation[2],title_pos="22%",title_top="30%",title_text_size=26)
#wordcloud3=WordCloud(width=30,height=12,title="音頻采樣率:"+fileInformation[3],title_pos="22%",title_top="38%",title_text_size=26)
#wordcloud4=WordCloud(width=30,height=12,title="總時長/s:"+fileInformation[4],title_pos="22%",title_top="36%",title_text_size=32)

# wordcloud.add("",fileInformation,value,word_size_range=[20,100],rotate_step=3
#        ,xaxis_pos=200,grid_left="1%",grid_bottom="50%",grid_top="5%",grid_right="80%")
#折線圖
line=Line("某某某某某走勢圖",title_pos='center',title_top="51%",title_text_size=32,width=600,height = 20)
attr=timePoint
line.add("某某某某某",attr,int_confidences,legend_pos="85%",legend_top="54%",
    mark_point=["max","min"],mark_line=["average"])
#餅圖
attr=["某某某某", "某某某某", "某某某某", "某某某"]
v1=[len_highRisk, len_middleRisk, len_lowRisk,len_noRisk]
pie=Pie("某某某某某某某",title_pos="65%",title_top="12%",title_text_size=32,width=100,height = 100)
pie.add("",attr,v1,radius=[0,30],center=[71,35],
    legend_pos="85%",legend_top="20%" ,legend_orient="vertical")
grid=Grid(width = 1800 ,height= 900)#調(diào)整畫布大小

grid.add(line,grid_left="5%",grid_bottom="2%",grid_top="60%")
grid.add(pie_title,grid_bottom="10%")
grid.add(wordcloud,grid_left="1%",grid_bottom="50%",grid_top="5%",grid_right="80%")
grid.add(wordcloud1,grid_left="1%",grid_bottom="50%",grid_top="5%",grid_right="80%")
grid.add(wordcloud2,grid_left="1%",grid_bottom="50%",grid_top="5%",grid_right="80%")
#grid.add(wordcloud3,grid_left="1%",grid_bottom="50%",grid_top="5%",grid_right="80%")
#grid.add(wordcloud4,grid_left="1%",grid_bottom="50%",grid_top="5%",grid_right="80%")
grid.add(pie,grid_left="50%",grid_bottom="50%")


#grid.render()
grid.render(path='./release/XXXX.html')

根據(jù)需求這個還可以跨平臺跨語言調(diào)用,比如C++程序調(diào)用python進行數(shù)據(jù)分析。

到此這篇關(guān)于利用pyecharts讀取csv并進行數(shù)據(jù)統(tǒng)計可視化的實現(xiàn)的文章就介紹到這了,更多相關(guān)pyecharts讀取csv可視化內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

衡南县| 朝阳县| 夏河县| 改则县| 牡丹江市| 大连市| 荆州市| 雷山县| 平昌县| 寿光市| 如东县| 海阳市| 蓬莱市| 汶上县| 陆良县| 信丰县| 新泰市| 新昌县| 成安县| 普宁市| 桐柏县| 星子县| 巫溪县| 红桥区| 曲水县| 酒泉市| 永仁县| 奎屯市| 荔浦县| 海南省| 本溪| 潞西市| 基隆市| 天门市| 乌苏市| 新安县| 山东| 张家界市| 富裕县| 南投县| 祁门县|