Python 绘制圆柱体(3D图)

不知道为何,介绍用Python画3D图形,很少提到圆锥体、圆柱体。或者是有些工具可以直接画出吧。
在上一篇文章中解决了圆锥体的问题(见下链接),现在把圆柱体问题也一并解决下,这个问题困扰了好几天,因为圆柱体本身看上去不像是一个曲面问题。

Python 绘制圆锥体(3D图)

其实,明白几何作图原理的话,圆柱体并不很难。圆柱体其实是一个圆,或者说是N多个圆,每个圆对应的高度不同。这句话可能不是很好理解,但仔细想想也不是很难。
画圆是一件很简单的事情,x是角度的sin值,y是角度的cos值,高度划分为多少份,就要把圆重复多少次。代码也不多,只有五行,代码和结果图如下。

# -*- coding: utf-8 -*-
#哪有什么可以直接登顶的人生,只有根据反馈不断迭代的过程! import matplotlib.pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d import Axes3D# 简单方法画出漂亮的圆柱体(半径和高度均为1)fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')# 生成圆柱数据,底面半径为r,高度为h。
# 先根据极坐标方式生成数据
u = np.linspace(0,2*np.pi,50)  # 把圆分按角度为50等分
h = np.linspace(0,1,20)        # 把高度1均分为20份
x = np.outer(np.sin(u),np.ones(len(h)))  # x值重复20次
y = np.outer(np.cos(u),np.ones(len(h)))  # y值重复20次
z = np.outer(np.ones(len(u)),h)   # x,y 对应的高度# Plot the surface
ax.plot_surface(x, y, z, cmap=plt.get_cmap('rainbow'))plt.show()

漂亮的结果图形如下所示!

Python 绘制圆柱体(3D图)相关推荐

  1. python画动图-Python绘制动态水球图过程详解

    先来看看绘制的动态水球图: 没有安装PyEcharts的,先安装PyEcharts: # 安装pyecharts模块,直接安装就是最新的版本pip install pyecharts 安装好PyEch ...

  2. python画折线图显示点值-Python 绘制可视化折线图

    1. 用 Numpy ndarray 作为数据传入 ply import numpy as np import matplotlib as mpl import matplotlib.pyplot a ...

  3. python画折线图代码-python绘制简单折线图代码示例

    1.画最简单的直线图 代码如下: import numpy as np import matplotlib.pyplot as plt x=[0,1] y=[0,1] plt.figure() plt ...

  4. python绘制雷达图代码实例-使用python绘制温度变化雷达图

    本文实例为大家分享了python绘制温度变化雷达图的具体代码,供大家参考,具体内容如下 假设某天某地每三个小时取样的气温为 针对温度变化趋势绘制雷达图: 代码如下: import numpy as n ...

  5. python画折线图详解-python绘制简单折线图代码示例

    1.画最简单的直线图 代码如下: import numpy as np import matplotlib.pyplot as plt x=[0,1] y=[0,1] plt.figure() plt ...

  6. python台风动图绘制_使用Python绘制台风轨迹图的示例代码

    参考: 使用CMA热带气旋最佳路径数据集,对我国周边的台风进行绘制 import re import os import numpy as np import matplotlib.pyplot as ...

  7. python画折线图代码实现_python如何绘制分布折线图 python绘制分布折线图代码示例...

    python如何绘制分布折线图?本篇文章小编给大家分享一下python绘制分布折线图代码示例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. 用Pyth ...

  8. python能画k线图吗_,求教使用python绘制K线图

    如何用python实现视频关键帧提取并保存为图片 import cv2 vc = cv2.VideoCapture('Test.avi') #读入视频文件 c=1 if vc.isOpened(): ...

  9. python画简单图-python绘制简单彩虹图

    本文实例为大家分享了python绘制彩虹图的具体代码,供大家参考,具体内容如下 代码: from turtle import * #控制彩虹路径 def path(pen, r, g, b): pen ...

最新文章

  1. 通过Navicat for MySQL远程连接的时候报错mysql 1130的解决方法
  2. 基于BootStrap,FortAweSome,Ajax的学生管理系统
  3. 代友招中高级.NET开发工程师【上海-徐汇】
  4. 【PHP 每日函数】第 03 周期
  5. Spark累加器(Accumulator)陷阱及解决办法
  6. php获取curl头_php中CURL请求头和响应头获取方法
  7. 分布式转码初步方案(hadoop+ffmpeg)
  8. 40无法u盘启动_戴尔主板bios设置u盘启动 戴尔台式电脑如何bios设置U盘启动教程...
  9. 前端学习(2077):开始回顾
  10. PHP监測memcache服务端的执行状况
  11. 获取请求消息行信息案例代码
  12. 机器人社社长事迹_国际机器人大赛冠军背后的故事
  13. 如何更有效地从阅读中汲取知识?
  14. Redis详解(七)——Redis主从同步高可用架构
  15. ToDoList本地存储原生js版/jQuery版
  16. 如何快速去除图片上的水印
  17. css3 背景模糊属性 背景滤镜 backdrop-filter
  18. Google收购Urchin
  19. 如何修改QColorDialog窗口的背景颜色和上面的字体
  20. Java实验(18) 幻灯片放映

热门文章

  1. 18_一文总结Flask语法
  2. vue(h5+app分享微信、朋友圈、保存图片)
  3. mysql中locat函数,MySQL中的LOCATE和POSITION函数使用方法
  4. Java导出2003、2007版Excel
  5. Google TPU edge装机
  6. 《Pro SQL Server Internals, 2nd edition》节选翻译(一)
  7. 【Xshell免费版,不用去找破解(ftp也一样)】
  8. 20201010基础标签用途说明
  9. linux服务器新装hba卡,EmulexHBA卡在Linux下的安装方法
  10. 笔记本无线上网设置教程(图文)