python画数据图_python数据分析库

python画数据图_python数据分析库之前学习了matplotlib.pyplot函数的使用方法,今天研究一下新工具pylab:pylab是matplotlib面向对象绘图库的一个接口,它的语法和Matlab十分相近,主要的绘图命令和Matlab对应的命令有相似的参数。简单的实例:frompylabimport*X=np.linspace(-np.pi,np.pi,256,endpoint=Tru

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定
之前学习了
matplotlib.pyplot函数的使用方法,今天研究一下新工具pylab:

pylab 是 matplotlib 面向对象绘图库的一个接口,它的语法和 Matlab 十分相近,主要的绘图命令和 Matlab 对应的命令有相似的参数。简单的实例:

from pylab import *
X = np.linspace(-np.pi, np.pi, 256,endpoint=True)
C,S = np.cos(X), np.sin(X)
plot(X,C)
plot(X,S)
show()

Jetbrains全家桶1年46,售后保障稳定
python画数据图_python数据分析库

X 是一个 numpy 数组,包含了从 −π到 +π等间隔的 256 个值。C 和 S 则分别是这 256 个值对应的余弦和正弦函数值组成的numpy 数组。另外,Matplotlib 的默认配置都允许用户自定义。你可以调整大多数的默认配置:图片大小和分辨率(dpi)、线宽、颜色、风格、坐标轴、坐标轴以及网格的属性、文字与字体属性等。

from pylab import *

# 创建一个 8 * 6 点的图,设置分辨率为 80
figure(figsize=(8,6), dpi=80)

# 创建一个新的 1 * 1 的子图,接下来的图样绘制在其中的第 1 块(唯一的一块)
subplot(1,1,1)

X = np.linspace(-np.pi, np.pi, 256,endpoint=True)
C,S = np.cos(X), np.sin(X)

# 绘制余弦曲线,使用蓝色的、连续的、宽度为 1 (像素)的线条
plot(X, C, color="blue", linewidth=1.0, linestyle="-")

# 绘制正弦曲线,使用红色的、连续的、宽度为 1 (像素)的线条
plot(X, S, color="red", linewidth=1.0, linestyle="-")

# 设置横轴的上下限
xlim(-4.0,4.0)
# 设置横轴记号
xticks(np.linspace(-4,4,9,endpoint=True))

# 设置纵轴的上下限
ylim(-1.0,1.0)
# 设置纵轴记号
yticks(np.linspace(-1,1,5,endpoint=True))

# 在屏幕上显示
show()


python画数据图_python数据分析库

我们在图的左上角添加一个图例。为此,我们只需要在 plot 函数里以「键 – 值」的形式增加一个参数。

from pylab import *

# 创建一个 8 * 6 点的图,设置分辨率为 80
figure(figsize=(8,6), dpi=80)

# 创建一个新的 1 * 1 的子图,接下来的图样绘制在其中的第 1 块(唯一的一块)
subplot(1,1,1)

X = np.linspace(-np.pi, np.pi, 256,endpoint=True)
C,S = np.cos(X), np.sin(X)

# 绘制曲线,添加图例
plot(X, C, color="blue", linewidth=1.0, linestyle="-", label="cos")
plot(X, S, color="red",  linewidth=1.5, linestyle="-", label="sin")
legend(loc='upper left')

# 设置横轴的上下限
xlim(-4.0,4.0)
# 设置横轴记号
xticks(np.linspace(-4,4,9,endpoint=True))

# 设置纵轴的上下限
ylim(-1.0,1.0)
# 设置纵轴记号
yticks(np.linspace(-1,1,5,endpoint=True))

# 在屏幕上显示
show()

python画数据图_python数据分析库

Matplotlib 中的「图像」指的是用户界面看到的整个窗口内容。在图像里面有所谓「子图」。子图的位置是由坐标网格确定的,而「坐标轴」却不受此限制,可以放在图像的任意位置。我们已经隐式地使用过图像和子图:当我们调用 plot 函数的时候,matplotlib 调用 gca() 函数以及 gcf() 函数来获取当前的坐标轴和图像;如果无法获取图像,则会调用 figure() 函数来创建一个——严格地说,是用 subplot(1,1,1) 创建一个只有一个子图的图像。

from pylab import *

# 创建一个 8 * 6 点的图,设置分辨率为 80
figure(figsize=(8,6), dpi=80)

# 创建一个新的 2 * 1 的子图,接下来的图样绘制在其中的第 1 块
subplot(2,1,1)

X = np.linspace(-np.pi, np.pi, 256,endpoint=True)
C,S = np.cos(X), np.sin(X)

# 绘制曲线,添加图例
plot(X, C, color="blue", linewidth=1.0, linestyle="-", label="cos")
legend(loc='upper left')
# 创建一个新的 2 * 1 的子图,接下来的图样绘制在其中的第 2 块
subplot(2,1,2)
plot(X, S, color="red",  linewidth=1.5, linestyle="-", label="sin")
legend(loc='upper left')

# 设置横轴的上下限
xlim(-4.0,4.0)
# 设置横轴记号
xticks(np.linspace(-4,4,9,endpoint=True))

# 设置纵轴的上下限
ylim(-1.0,1.0)
# 设置纵轴记号
yticks(np.linspace(-1,1,5,endpoint=True))

# 在屏幕上显示
show()

python画数据图_python数据分析库

当然,还可以绘制其他不同种类的图:散点图,柱状图,3D图等

from pylab import *

n = 1000
X = np.random.normal(0,1,n)
Y = np.random.normal(0,1,n)
#散点图
scatter(X,Y)
show()


python画数据图_python数据分析库

from pylab import *

n = 10
X = np.arange(n)
Y1 = (1-X/float(n)) * np.random.uniform(0.5,1.0,n)
Y2 = (1-X/float(n)) * np.random.uniform(0.5,1.0,n)
#柱状图
bar(X, +Y1, facecolor='#9988ff', edgecolor='red')
bar(X, -Y2, facecolor='#ff9966', edgecolor='red')

for x,y in zip(X,Y1):
    text(x+0.4, y+0.05, '%.2f' % y, ha='center', va= 'bottom')

ylim(-1.25,+1.25)
show()


python画数据图_python数据分析库

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/234930.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • mybatis重拾—部署官方demo

    mybatis重拾—部署官方demo

    2022年1月31日
  • java的api类_javaAPI类

    java的api类_javaAPI类扫描器Scanner可以用来从键盘输入读取数据extLine()获取一行字符串nextInt()获取一个整数nextFloat()获取一个浮点数大数字BigInteger如果我们需要操作一个很大的整数,它无法用long来表达时,就可以用BigIntegeradd()加subtract()减multiply()乘divide()除mod()取余包装类ØJDK提供了对所有数据类…

    2022年7月7日
  • android 混淆规则作用,Android代码混淆详解

    android 混淆规则作用,Android代码混淆详解一、混淆的意义混淆代码并不是让代码无法被反编译,而是将代码中的类、方法、变量等信息进行重命名,把它们改成一些毫无意义的名字,同时也可以移除未被使用的类、方法、变量等。所以直观的看,通过混淆可以提高程序的安全性,增加逆向工程的难度,同时也有效缩减了apk的体积。总结如下:1、将项目中的类、方法、变量等信息进行重命名,变成一些无意义的简短名字。2、移除未被使用的类、方法、变量等。二、混淆的规则和配置…

    2022年5月30日
  • 【HTML基础】CSS样式表「建议收藏」

    【HTML基础】CSS样式表「建议收藏」1.理解HTML与CSS各自的功能及配合原则;2.掌握HTML与CSS的三种组合方式。

    2022年7月14日
  • jar中没有主清单属性啥意思啊_maven打jar包无主清单属性

    jar中没有主清单属性啥意思啊_maven打jar包无主清单属性在maven-assembly-plugin插件配置中添加,如下内容:maven-assembly-plugin

    2022年9月5日
  • hash表存储方式_哈希表与数据的存储结构有关吗

    hash表存储方式_哈希表与数据的存储结构有关吗HashSet集合的自身特点: *   1、底层数据结构:哈希表 *   2、存储,拿取都比较快 *   3、线程不安全,运行速度快代码实现如下:packageitcast.demo1;importjava.util.HashSet;/**HashSet集合的自身特点:* 底层数据结构:哈希表* 存储,拿取都比较快* 线…

    2022年11月1日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号