python r语言 作图_生物医学绘图,Python 并不比R语言差
做过基因测序和生物信息学分析,尤其是做过RNAseq分析的同学都知道,R语言中有一款数据可视化神器ggplot2,其绘图功能强大,但它的缺陷是不能直接绘制3D图形,需要加载扩展包,很麻烦。
如果用Python语言,matplotlib只需要几行代码就能画出漂亮的3D图形,要啥有啥,不信往下看:
3D线型图
代码如下:
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-6 * np.pi, 6 * np.pi, 1000)
y = np.sin(x)
z = np.cos(x)
fig = plt.figure()
ax = Axes3D(fig)
ax.plot(x, y, z)
plt.show()
3D曲面图
代码如下:
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
fig = plt.figure()
ax = Axes3D(fig)
X = np.arange(-2, 2, 0.1)
Y = np.arange(-2, 2, 0.1)
X, Y = np.meshgrid(X, Y)
Z = np.sqrt(X ** 2 + Y ** 2)
ax.plot_surface(X, Y, Z, cmap=plt.cm.winter)
plt.show()
3D散点图
代码如下:
import numpy as np
x = np.random.normal(0, 1, 100)
y = np.random.normal(0, 1, 100)
z = np.random.normal(0, 1, 100)
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
fig = plt.figure()
ax = Axes3D(fig)
ax.scatter(x, y, z)
plt.show()
3D混合图
代码如下:
from mpl_toolkits.mplot3d import Axes3D
import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure()
ax = Axes3D(fig)
x1 = np.linspace(-3 * np.pi, 3 * np.pi, 500)
y1 = np.sin(x1)
ax.plot(x1, y1, zs=0, c='red')
x2 = np.random.normal(0, 1, 100)
y2 = np.random.normal(0, 1, 100)
z2 = np.random.normal(0, 1, 100)
ax.scatter(x2, y2, z2)
plt.show()
3D子图
代码如下:
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import numpy as np
fig = plt.figure()
ax1 = fig.add_subplot(1, 2, 1, projection='3d')
x = np.linspace(-6 * np.pi, 6 * np.pi, 1000)
y = np.sin(x)
z = np.cos(x)
ax1.plot(x, y, z)
ax2 = fig.add_subplot(1, 2, 2, projection='3d')
X = np.arange(-2, 2, 0.1)
Y = np.arange(-2, 2, 0.1)
X, Y = np.meshgrid(X, Y)
Z = np.sqrt(X ** 2 + Y ** 2)
ax2.plot_surface(X, Y, Z, cmap=plt.cm.winter)
plt.show()
3D柱状图
代码如下:
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import numpy as np
fig = plt.figure()
ax = Axes3D(fig)
x = [0, 1, 2, 3, 4, 5, 6]
for i in x:
y = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
z = abs(np.random.normal(1, 10, 10))
ax.bar(y, z, i, zdir='y', color=['r', 'g', 'b', 'y'])
plt.show()
小结
Python语言简洁而优雅,不仅绘图功能强大,还是目前最火的人工智能用到最多的语言。画图的例子还有很多,上面每个图还可进一步精雕细凿,调整颜色和饱和度,精致到艺术品水平,自己试试就知道了。
python r语言 作图_生物医学绘图,Python 并不比R语言差相关推荐
- spss与python和sql区别_数据分析中的Excel、R、Python、SPSS、SAS和SQL
作为一直想入门数据分析的童鞋们来说,如何选定一门面向数据分析的编程语言或工具呢?注意是数据分析,而不是大数据哦,数据分析是基础了. 数据分析的工具千万种,综合起来万变不离其宗.无非是数据获取.数据存储 ...
- python代码做图_如何用Python代码制作图
Python是一种跨平台的计算机程序设计语言.是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的.大型项目的开发. 图是一 ...
- 爬虫python和c语言区别_爬虫概述 - Python教程 - C语言网
网络爬虫(又称为网页蜘蛛,网络机器人,更经常的称为网页追逐者),它按照一定的规则自动地抓取网络信息. 1. 产生背景 随着时代的进步,互联网上拥有大量的信息,但是我们该如何高效的获取这些信息成为了一个 ...
- python如何用c语言表示_如何在python中调用C语言代码
原博文 2019-04-03 14:19 − 1.使用C扩展CPython还为开发者实现了一个有趣的特性,使用Python可以轻松调用C代码 开发者有三种方法可以在自己的Python代码中来调用C编写 ...
- 如何用python进行相关性分析_如何利用python进行时间序列分析
题记:毕业一年多天天coding,好久没写paper了.在这动荡的日子里,也希望写点东西让自己静一静.恰好前段时间用python做了一点时间序列方面的东西,有一丁点心得体会想和大家分享下.在此也要特别 ...
- python数据科学手册_小白入门Python数据科学
前言 本文讲解了从零开始学习Python数据科学的全过程,涵盖各种工具和方法 你将会学习到如何使用python做基本的数据分析 你还可以了解机器学习算法的原理和使用 说明 先说一段题外话.我是一名数据 ...
- python爬虫获取方法_小白学python爬虫:2.获得数据
在上一篇文章我我们已经完成了对网页的分析,包括了:在源码中数据的定位:获取方法(xpath).那么在获得数据之前我们考虑的则是如何获取源码. 接下来我们将学习如何从服务器获得源码. #写在前面&quo ...
- python金融量化书籍_超强干货 | Python金融数据量化分析教程+机器学习电子书
如今Python语言的学习已经上升到了国家战略的层面上.Python语言是人工智能的基础语言,国家相关教育部门对于"人工智能普及"格外重视,不仅将Python列入到小学.中学和高中 ...
- 学习python最好的书籍_最好的Python书籍
学习python最好的书籍 Python is an amazing programming language. It can be applied to almost any programming ...
最新文章
- 2017 ACM/ICPC 南宁赛区小结 By JSB @ Reconquista
- linux下创建新用户以及删除
- Vue项目碰到‘webpack-dev-server’不是内部或外部命令,也不是可运行的程序或批处理文件报错...
- 文巾解题 1433. 检查一个字符串是否可以打破另一个字符串
- c++ map用法_Pandas数据处理三板斧——map、apply、applymap详解
- linux中进程的控制总结,Linux中的进程控制
- maven 插件未找到_防止在多模块Maven中找到“未找到插件”
- resteasy_RESTEasy教程第1部分:基础
- 解决:Could not find or load main class org.apache.rocketmq.example.quickstart.Producer
- PL/SQL程序设计以及安全管理实验遇到的问题及解决
- [Spark] - HashPartitioner RangePartitioner 区别
- 离线安装 Android 4.0 SDK
- Kubernetes学习之路目录
- smart原则_人生工具:SWOT、PDCA、6W2H、SMART、WBS、时间管理、二八原则
- 【20保研】四川大学计算机学院(软件学院)2019年全国优秀大学生暑期夏令营招生简章...
- 免费的端口映射工具哪个好用
- 本地组策略编辑器计算机配置,打开本地组策略编辑器|没有本地组策略编辑器...
- python二元一次方程组用鸡兔同笼的思路来写编程_二元一次方程组应用 —鸡兔同笼...
- 什么是知识库,怎么制作知识库?
- 关于自己配置电脑的一点心得