小编写这篇文章的一个主要目的,主要是给大家去做一个介绍,介绍的内容是,利用Python这门语言,去绘制相关的数据动态图表,那么,具体的绘制方法是什么呢?下面小编就给大家详细的解答。
数据动态图怎么做,效果图,
多子图联动竞赛图
安装
pip install pandas_alive #或者 conda install pandas_alive-c conda-forge 玩起来
支持数据
数据格式如下,
使用方法类似pandas????这些,pandas仅需一行代码解决支持图形类别
动态地图
结合geopandas,
动态水平bar
import pandas as pd import pandas_alive import matplotlib.pyplot as plt plt.style.use('ggplot') #读入数据 elec_df=pd.read_csv("Aus_Elec_Gen_1980_2018.csv", index_col=0, parse_dates=[0], thousands=',') #定义求和def def current_total(values): total=values.sum() s=f'Total:{int(total)}' return{'x':.85,'y':.2,'s':s,'ha':'right','size':11} #缺省值0填充、绘图 elec_df.fillna(0).tail(n=10).plot_animated( 'electricity-generated-australia.gif',#保存gif名称 period_fmt="%d/%m/%Y",#动态更新图中时间戳 title='Australian Electricity Sources 1980-2018',#标题 perpendicular_bar_func='mean',#添加均值辅助线 period_summary_func=current_total,#汇总 cmap='Set1',#定义调色盘 n_visible=5,#柱子显示数 orientation='h',#柱子方向 )
动态垂直bar
动态折线
elec_df.diff().fillna(0).tail(n=10).plot_animated(filename='line-chart.gif', kind='line',#指定折线模式 cmap='Set1', period_label={ 'x':0.25, 'y':0.9 }, line_width=1, add_legend=True, fill_under_line_color='#01a2d9')
动态累积bar
import pandas_alive covid_df.sum(axis=1).fillna(0).tail(n=10).plot_animated( filename='sumbar-chart.gif', kind='bar',#指定bar模式 cmap='Set1',#定义调色盘 period_label={ 'x':0.1, 'y':0.9 }, orientation='h', enable_progress_bar=True, steps_per_period=2, interpolate_period=True, period_length=200)
动态散点图
import pandas as pd import pandas_alive #max散点数据 max_temp_df=pd.read_csv( "Newcastle_Australia_Max_Temps.csv", parse_dates={"Timestamp":["Year","Month","Day"]}, ) #min散点数据 min_temp_df=pd.read_csv( "Newcastle_Australia_Min_Temps.csv", parse_dates={"Timestamp":["Year","Month","Day"]}, ) #按时间戳merge max/min数据 merged_temp_df=pd.merge_asof(max_temp_df,min_temp_df,on="Timestamp") merged_temp_df.index=pd.to_datetime( merged_temp_df["Timestamp"].dt.strftime('%Y/%m/%d')) keep_columns=[ "Minimum temperature(Degree C)","Maximum temperature(Degree C)" ] merged_temp_df.head(n=5000)[keep_columns].resample("Y").mean().plot_animated( filename='scatter-chart.gif', cmap='Set1', kind="scatter",#指定散点模式 size=10, title='Max&Min Temperature Newcastle,Australia')
动态气泡图
import pandas_alive multi_index_df=pd.read_csv("multi.csv",header=[0,1],index_col=0) multi_index_df.index=pd.to_datetime(multi_index_df.index,dayfirst=True) map_chart=multi_index_df.tail(n=40).plot_animated( kind="bubble",#指定气泡模式 filename="bubble-chart.gif", x_data_label="Longitude", y_data_label="Latitude", size_data_label="Cases", color_data_label="Cases", vmax=5, steps_per_period=1, interpolate_period=True, period_length=500, dpi=150)
多子图一起动
这部分可以结合matplotlib的多子图绘制,实现各种个性化动图,可参考matplotlib-多子图绘制(为所欲为版),核心代码如下,
综上所述,这篇文章就给大家介绍到这里了,希望可以给大家带来帮助。
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/128339.html
matplotlib作为一种常见的可视化图形操作软件,在日常的生活中应用还是比较的广泛的,下面跟着小编的视角,带着大家去详细解答Python+matplotlib绘制多子图的方法。 本文速览 matplotlib.pyplot api绘制子图 面向对象方式绘制子图 matplotlib.gridspec.GridSpec绘制子图 任意位置添加子图 关于pyplot和面向对象两种绘图...
小编写这篇文章的主要目的,主要是给大家去做一个详细解答,介绍的内容是关于Python pyecharts的一些详细内容,给大家讲解关于如何绘制水球图等相关事宜,具体的内容,下面给大家详细解答。 水球图 水球图首先是动态的效果,像水流一样波动,所以看起来比较的舒服,一般用于业务里面的完成率,其实和之前的仪表盘有点类似,但是我个人绝对水球图更加的好,因为看起来比较的炫酷。 frompyech...
摘要:直方图的绘制也需要用到下的,只不过在绘制折线图时我们采用的是,而绘制直方图时我们需要采用。利用确定直方图轴的范围及间距,为最小值,为最大值,为间距。用绘制,为数据,为直方图的特性,可有可无。 1.直方图的绘制也需要用到matplotlib下的pylab,只不过在绘制折线图时我们采用的是plot(),而绘制直方图时我们需要采用hist()。由于在绘制过程中缺少真实数据,我在这里采用np....
摘要:借助,自动提取代码的动态调用流程图。绘制类图安装是一个开源图形可视化软件。循环曲线表示递归过程调用。绘制的常用工具有静态调用图等。包括模块之间的调用流程函数调用次数及耗时等。 ...
matplotlib作为常见的可视化绘图工具,在工作当中,应用还是比较的广泛的,那么,我们要怎么使用python这门语言去进行绘图呢?下面就给大家详细解答下。 1、matplotlib之父简介 matplotlib之父John D.Hunter已经去世,他的一生辉煌而短暂,但是他开发的的该开源库还在继续着辉煌。国内介绍的资料太少了,查阅了一番整理如下: 1968出身于美国的田纳西州代尔斯...
阅读 910·2023-01-14 11:38
阅读 877·2023-01-14 11:04
阅读 740·2023-01-14 10:48
阅读 1980·2023-01-14 10:34
阅读 941·2023-01-14 10:24
阅读 818·2023-01-14 10:18
阅读 498·2023-01-14 10:09
阅读 571·2023-01-14 10:02