当前位置: 首页 > news >正文

如何做企业网站php西安网页设计师

如何做企业网站php,西安网页设计师,澄迈网站建设,金华网站建设公司哪家好前述已经完成了直方图和3D图的基本学习,链接如下: 直方图:python画图|水平直方图绘制-CSDN博客 3D图:python画图|水平直方图绘制-CSDN博客 现在我们尝试把二者结合,画3D直方图。 【1】官网教程 首先,依…

前述已经完成了直方图和3D图的基本学习,链接如下:

直方图:python画图|水平直方图绘制-CSDN博客

3D图:python画图|水平直方图绘制-CSDN博客

现在我们尝试把二者结合,画3D直方图。

【1】官网教程

首先,依然是来到官网,链接如下;

Demo of 3D bar charts — Matplotlib 3.9.2 documentation

官网输出了好看的3D直方图,为此,尝试解读代码。

【2】代码解读

 首先是引入numpy和matplotlib模块:

import matplotlib.pyplot as plt  #引入matplotlib模块画图
import numpy as np #引入numpy模块做数学计算

然后声明了要画3D图:

# set up the figure and Axes
fig = plt.figure(figsize=(8, 3)) #定义要画图
ax1 = fig.add_subplot(121, projection='3d') #声明要画3D图,位于左侧
ax2 = fig.add_subplot(122, projection='3d') #声明要画3D图,位于右侧

再之后定义了一组数据备用:

# fake data
_x = np.arange(4) #_x取值[0 1 2 3]
_y = np.arange(5) #_x取值[0 1 2 3 4]
_xx, _yy = np.meshgrid(_x, _y) #生成一个_x和_y组成的矩阵
x, y = _xx.ravel(), _yy.ravel() #使用ravel()把_xx和_yy拉成一维数组

这里稍微复杂一些,因此我们先把数据输出。

前半部分,_x = np.arange(4)=[0 1 2 3],_y = np.arange(5)=[0 1 2 3 4],这家可以直接看出来的数据,然后出现了_xx和_yy,再之后它们又被拉平成一位数据赋值给x和y。

在编辑器输入以下代码:

import matplotlib.pyplot as plt  #引入matplotlib模块画图
import numpy as np #引入numpy模块做数学计算# set up the figure and Axes
fig = plt.figure(figsize=(8, 3)) #定义要画图
ax1 = fig.add_subplot(121, projection='3d') #声明要画3D图,位于左侧
ax2 = fig.add_subplot(122, projection='3d') #声明要画3D图,位于右侧# fake data
_x = np.arange(4) #_x取值[0 1 2 3]
_y = np.arange(5) #_x取值[0 1 2 3 4]
_xx, _yy = np.meshgrid(_x, _y) #生成一个_x和_y组成的矩阵
x, y = _xx.ravel(), _yy.ravel() #使用ravel()把_xx和_yy拉成一维数组
print('_x=',_x)
print('_y=',_y)
print('_xx=',_xx)
print('_yy=',_yy)
print('x=',x)
print('y=',y)

输出结果为:

_x= [0 1 2 3]
_y= [0 1 2 3 4]
_xx= [[0 1 2 3]
 [0 1 2 3]
 [0 1 2 3]
 [0 1 2 3]
 [0 1 2 3]]
_yy= [[0 0 0 0]
 [1 1 1 1]
 [2 2 2 2]
 [3 3 3 3]
 [4 4 4 4]]
x= [0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3]
y= [0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4]

可见meshgrid把_xx和_yy都定义成5X4矩阵,然后又被ravel都拉成一维矩阵。

换一个说法,_x = np.arange(4)=[0 1 2 3],_y = np.arange(5)=[0 1 2 3 4],在_x和_y中任取一个数,按照上下两列的形式排列,出来的结果就是x和y。

继续解读:定义直方图的基本属性

top = x + y #定义top=x+y
bottom = np.zeros_like(top) #返回一个一维top列的0矩阵
width = depth = 1 #定义width = depth = 1

定义画图和输出图形:

ax1.bar3d(x, y, bottom, width, depth, top, shade=True) #定义画3D图,有阴影
ax1.set_title('Shaded') #设置3D图名字Shadedax2.bar3d(x, y, bottom, width, depth, top, shade=False) #定义画3D图,无阴影
ax2.set_title('Not Shaded') #设置3D图名字Not Shadedplt.show() #输出图形

需要注意的是, bottom其实是方块的底部,bottom = np.zeros_like(top)就是要求下一个方块叠放在上一个方块上。

输出结果为;

图1

由图1可见,3D直方图左侧有阴影,右侧没有。

【3】总结

 本文学习了3D直方图基本画法。

http://www.yayakq.cn/news/152771/

相关文章:

  • 海南做网站找谁网站建设有多少公司
  • 广州番禺职业技术学院官网成都seo优化
  • 泉州网站建设轩奇网讯公众号文章怎么导入wordpress
  • 教育行业建设网站采购销售管理软件
  • 网站建设意向书没有网站怎么做百度竞价
  • 大型网站制作流程网站备案需要那些资料
  • fwa 网站 欣赏网页版qq在线登录
  • 甘肃省酒泉市做网站公司个人网店搭建思路设计
  • 辽宁平台网站建设价位做网站那个程序好
  • 广西长长路桥建设有限公司网站做网站设计师的感想
  • 培训会网站建设昆明网络推广招聘
  • 手机的网站建设目标是什么意思科技是第一生产力人才是第一资源创新是第一动力判断题
  • 做汽车团购的网站有哪些高端建设网站公司
  • 系统开发网站沈阳seo网站推广
  • 画家网站建设博罗网站设计
  • 鞍山制作网站哪家好广西网络推广怎么做
  • 厦门营销网站建设公司科技创新的重要性和意义
  • 移动端网站建设推广方案网站照片要求
  • 普通网站做网站开发风险协议
  • 濮阳市网站建设公司软件开发制作流程图
  • 网站的ftp地址怎么查自建站工具
  • 深圳国税局网站怎么做票种核定wordpress下载的插件怎么用
  • 企业还做网站吗手机免费制图软件
  • 科技网站配色方案网站建设商家公司
  • 长沙商城网站开发wordpress 开启链接
  • 做销售用什么网站好飘雪影院手机免费观看免费
  • 集团公司中英文网站模板壹舍设计公司
  • 学做网站论坛 可以吗中国网站设计师
  • 网站后台用什么开发网络营销方式研究心得1500
  • 免费制作论坛网站模板ppt免费下载雷锋网站