目录

  • 1. 原始数据
  • 2. 代码
  • 3. 结果

当有数据想要进行横向纵向同步比较时,三维柱状图是最好的选择,目前基础的word和excel还不具备此功能,可以使用专业画图软件origin pro来做,python也是很多人首先想到的。网上搜了一下关于python绘制三维柱状图,没有找到可用的,偶然间发现一个第三方库pyecharts,不仅可以绘制三维图,还能动态展示,生成的是html文件。
中文文档地址:http://pyecharts.herokuapp.com/;github项目源码

仅以下方数据示例,更复杂的操作请参看GitHub

1. 原始数据


我的原始数据都是按100算的,所以在函数中有用除以100计算,如果数据正好是1以内,可以不做除以100处理

2. 代码

import random
from pyecharts.faker import Faker
from pyecharts import options as opts
from pyecharts.charts import Bar3D
import pandas as pd
import numpy as np
def read_do():   #负责数据的读取和整理init_data=pd.read_excel(r"D:\python\pra\画图\青岛指标.xlsx")init_data=np.array(init_data)data_tip=['GDP增速','常住人口城镇化率','第二产业占GDP比重','第三产业占GDP比重','城市恩格尔系数','公园绿地建成区绿化覆盖率','居民消费价格指数','商品零售价格指数','工业生产者出厂价格指数']data_year=[2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018]data_pre=[]num=1N=0for st in data_tip:ofr=0for dy in data_year:fuck = [st,dy,float(init_data[ofr][num]/100)] # 原始数据做除以100处理,使其位于0-1之间data_pre.append(fuck)N = N+1ofr = ofr+1num = num+1return data_pre
def bar3d_base() -> Bar3D:data = read_do()data_tip=['GDP增速','常住人口城镇化率','第二产业占GDP比重','第三产业占GDP比重','城市恩格尔系数','公园绿地建成区绿化覆盖率', '居民消费价格指数','商品零售价格指数','工业生产者出厂价格指数']data_year=[2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018]c = (Bar3D().add("",data,xaxis3d_opts = opts.Axis3DOpts(data_tip,type_="category",max_=9),yaxis3d_opts = opts.Axis3DOpts(data_year,type_="time",max_=2019),zaxis3d_opts = opts.Axis3DOpts(type_="value",max_=1), # 此处最大值为1,也可以自行设置,不过值过大颜色都是红色grid3d_opts = opts.Grid3DOpts(width="280",height="100")).set_global_opts(visualmap_opts = opts.VisualMapOpts(max_=1),title_opts = opts.TitleOpts(title = "青岛指标"),))return c
abc = bar3d_base()
abc.render("青岛指标.html")

3. 结果




可以看到,图片左侧有一个颜色条,表示0-1的数值,故要将数据处理为0-1之间。
可以旋转查看,是动态的。

python绘制三维动态柱状图-使用pyecharts模块相关推荐

  1. python绘制三维图散点图_python matplotlib模块——绘制三维图形、三维数据散点图...

    分类: 计算机视觉 python matplotlib模块,是扩展的MATLAB的一个绘图工具库.他可以绘制各种图形,可是最近最的一个小程序,得到一些三维的数据点图,就学习了下python中的matp ...

  2. python绘制三维曲面图-python中Matplotlib实现绘制3D图的示例代码

    Matplotlib 也可以绘制 3D 图像,与二维图像不同的是,绘制三维图像主要通过 mplot3d 模块实现.但是,使用 Matplotlib 绘制三维图像实际上是在二维画布上展示,所以一般绘制三 ...

  3. Python绘制三维立体图详解与绘图填充

    1.利用Python绘制三维图 目标: 绘制图像 z^2 = x^2 + y^2 + x/3 + y/3 1.第一步我们先导入画图所需要的包: import matplotlib.pyplot as ...

  4. matlab rgb三维直方图,MATLAB小技巧之十:利用MATLAB绘制三维彩色柱状图[转载]

    MATLAB自带有绘制三维柱状图的函数bar3,有版友反映不好控制柱子的颜色,特别是bar3不能绘制渐变色的柱子,并且bar3不能根据用户指定的散点数据绘制柱状图.为此,我编写了一个函数(scatte ...

  5. matlab矩阵画柱状三维,[原创]利用MATLAB绘制三维彩色柱状图

    function scatterbar(x,y,z,scale) %   根据散点数据绘制3维彩色柱状图 %   scatterbar(x,y,z,scale)  x,y,z是实值数组,用来指定柱子顶 ...

  6. Python绘制三维图详解

    利用Python绘制三维图 目标: 绘制图像z2=x2+y2z^2 = x^2 + y^2z2=x2+y2 import matplotlib.pyplot as plt import numpy a ...

  7. Python绘制桑基图Sankey,Pyecharts不显示html页面,桑基图只显示标题,原因总结

    Python绘制桑基图Sankey,Pyecharts不显示html页面,桑基图只显示标题,原因总结 说说使用上的三点注意: 1.nodes中的"name"不要重新命名,否则会不识 ...

  8. python matplotlib.pyplot 如何实时绘制三维动态窗口?(可鼠标拖动角度)

    实时绘制三维图并更新窗口 # -*- coding: utf-8 -*- """ @File : test.py @Time : 2020/5/26 18:09 @Aut ...

  9. python绘制三维曲线图_机器学习的绘图库有哪些?如何运用python绘制机器学习常见曲线?...

    专栏引荐 绘图的变量 单变量 查看单变量最方便的无疑是displot()函数,默许绘制一个直方图,并你核密度估计(KDE) sns.set(color_codes=True) np.random.se ...

  10. 数据可视化 | Python绘制多维柱状图:一图展示西部各省人口变迁【附本文数据和代码】

    查看原文:[数据seminar]https://mp.weixin.qq.com/s/pvx2ZzLbrBL-6cyOwVATOA Part1前言 柱状图是利用柱子的高度来反映数据差异的统计图,与一维 ...

最新文章

  1. 论字符界面和WEB界面配置的优缺点
  2. npm修改默认安装路径和数据源
  3. uni-app获取当前具体日期时间并将其格式化
  4. 实现IMSI、IMEI查询
  5. 设计模式系列 12-- 职责链模式
  6. SolidKit.ERPs ERP集成接口工具(for SOLIDWORKS PDM)
  7. f1c100A运行linux,荔枝派 Nano 全志 F1C100s 编译运行 Linux 笔记
  8. CDH安装时报错:/opt/cloudera/parcels/.flood/.../CDH-6.3.2-1.cdh6.3.2.p0.1605554-el7.parcel does not exist
  9. 阿里云ECS部署L2TP/IPSEC,访问服务器内网
  10. Arnold材质节点篇- GPU渲染从入门到放弃
  11. 家用无线TP-LINK路由器使用一段时间后,频繁断网解决办法之一
  12. Linux服务器的eth,Linux服务器---网络配置
  13. oracle读取数字时添加小数或者加上分隔符
  14. IFR报告显示过去五年全球工业机器人销量翻番
  15. DSP CCS12.00 芯片:TMS320F28335 直流电机部分 + TFTLCD 显示部分 + 按键模块
  16. win10系统盘清理
  17. c语言英文排版程序,C语言设计—英文排版系统精品.docx
  18. 昆仑通态MCGS与3台力士乐VFC-x610变频器通讯程序 实现昆仑通态触摸屏与3台力士乐VFC-x610变频器通讯
  19. 手把手教你使用 EndNote X9
  20. BowtieXP.v6.0.7+DecisionTools Suite v7.5风险管策析

热门文章

  1. 两年软件开发工作总结及未来展望
  2. 鲁大师Q3季度电动车报告:最聪明的电动车跑分曝光
  3. 如何快速搭建php网站,如何轻松建站?站点一键部署搭建(详细教程)
  4. 增量式PID是什么?不知道你就落伍了
  5. Libre 6008 「网络流 24 题」餐巾计划 (网络流,最小费用最大流)
  6. 【阿里云IoT+YF3300】10.快速开发188协议设备驱动
  7. IaaS PaaS SaaS DaaS基础设施即服务、平台即服务、软件即服务、数据即服务详解
  8. 2019清华大学、中山大学、中传自主招生笔试面试真题
  9. 实现一个javascript手势库 -- base-gesture.js
  10. 公告栏模板php代码,destoon调用自定义模板及样式的公告栏