MATLAB
MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。
Matplotlib
Matplotlib 是一个由 John Hunter 等开发的,用以绘制二维图形的 Python 模块。它利用了 Python 下的数值计算模块 Numeric 及 Numarray,克隆了许多 Matlab 中的函数, 用以帮助用户轻松地获得高质量的二维图形。
Matplotlib 可以绘制多种形式的图形包括普通的线图,直方图,饼图,散点图以及误差线图等;可以比较方便的定制图形的各种属性比如图线的类型,颜色,粗细,字体的大小等;它能够很好地支持一部分 TeX 排版命令,可以比较美观地显示图形中的数学公式。Matplotlib 掌握起来也很容易,由于 Matplotlib 使用的大部分函数都与 Matlab 中对应的函数同名,且各种参数的含义,使用方法也一致,这就使得熟悉 Matlab 的用户使用起来感到得心应手。对那些不熟悉的 Matlab 的用户而言,这些函数的意义往往也是一目了然的,因此只要花很少的时间就可以掌握。
Matplotlib涉及的逻辑基本上跟我们自己绘画的流程是一样的。
- 找一张纸或者一块画布;
- 调色等一系列前戏;
- 作画。
# -*- coding: utf-8 -*-
"""
Created on Fri Jul 5 20:59:42 2019
@author: Administrator
"""
import matplotlib.pyplot as plt
from matplotlib.matlab import *
import numpy as np
from matplotlib.pyplot import cm as cm
import os
os.chdir("F:\\learningPython")
x= np.linspace(0.5,3.5,100)
y = np.sin(x)
y1 = np.random.randn(100)
plt.scatter(x,y1,c= "0.25",label= "scatter figure")
plt.plot(x,y,ls="-",lw= 2,c="c",label= "plot figure")#,lable= "plot figure"
for spine in plt.gca().spines.keys():
plt.gca().spines[spine].set_color("none")
plt.gca().xaxis.set_ticks_position("bottom")
plt.gca().yaxis.set_ticks_position("left")
plt.xlim(0.0,4.0)
plt.ylim(-3.00,3.0)
plt.xlabel("x-label")
plt.ylabel("y-lalel")
plt.grid(True,linestyle=":",color="r")
plt.axhline(y=0.0,c="r",ls="--",lw=2)
plt.axvspan(xmin=1.0,xmax=2.0,facecolor="y",alpha=0.3)
plt.annotate("spines",
xy=(0.75,-3),
xytext=(0.35,-2.25),
weight="bold",
color="b",
arrowprops=dict(arrowstyle="->",connectionstyle="arc3",color="b")
)
plt.annotate("maximum",
xy=(np.pi/2,1.0),
xytext=((np.pi/2)+1.0,.8),
weight="bold",
color="b",
arrowprops=dict(arrowstyle="->",connectionstyle="arc3",color="b")
)
plt.annotate("",
xy=(0,-2.78),
xytext=(0.4,-2.32),
weight="bold",
color="b",
arrowprops=dict(arrowstyle="->",connectionstyle="arc3",color="b")
)
plt.annotate("",
xy=(3.5,-2.98),
xytext=(3.6,-2.70),
weight="bold",
color="b",
arrowprops=dict(arrowstyle="->",connectionstyle="arc3",color="b")
)
plt.text(3.6,-2.70,"'|' is tickline",weight="bold",color="b")
plt.text(3.6,-2.95,"3.5 is ticklabel",weight="bold",color="b")
plt.title("structure of matplotlib")
plt.legend()
plt.savefig('power.png', dpi=75)
plt.show()
matplotlib中文教程
谈谈Python实战数据可视化之matplotlib模块(基础篇)
基于 Python Matplotlib 模块的高质量图形输出
MATLAB中国
sample_plots
MATLAB|baidu
Python数据可视化之matplotlib实践chapter-01
Question: Which Bioinformatics Tools Are Written In Python
Matplotlib设计的基本逻辑
网友评论