首页 > 其他分享 >matplotlib基础

matplotlib基础

时间:2023-07-02 20:57:14浏览次数:28  
标签:plot None plt 基础 matplotlib 绘图 ax

绘图与可视化

如果想在jupyter notebook中使用

%matplotlib notebook

导入matplotlib包

import matplotlib.pyplot as plt

直接生成一个简单图形

data = np.arange(10)

plt.plot(data)

matplotlib所绘制的图位于Figure对象中,使用plt.figure就生成一个图片

fig = plt.figure()

不能在空白的图片中进行绘图,,需要创建子图

ax1 = fig.add_subplot(2,2,1) //2行2列的第一个位置

notebook中,单个单元格运行后,图表会重置,所以对于复杂的图表,所有绘图命令放在一个单元格中

如果定义多个子图,绘图之后会默认在最后一个子图进行绘制

plt.plot([1.4,1.2])

fig.add_subplot返回对象是Axes Subplot对象,使用这些对象可以直接在空白子图进行绘图。

matplotlib包含了一个便捷方法plt.subplots,它创建一个新的图片,然后返回包含了已生成子图对象的Numpy数组

fig, axes = plt.subplots(2,3) //两行三列个子图

fig, axes = plt.subplots(2,3,sharex=True,sharey=True) //共享x轴y轴

调整间距的函数

plt.subplots_adjust(left=None, bottom=None,right=None,top=None,wspace=None,hspace=None)

颜色标记线类型

plot函数接收一些带有x,y的数组以及参数决定颜色和线形

ax.plot(x,y,'g--')

ax.plot(x,y,linestyle='--', color='g')

还可以带标记,但是线类型,标记类型必须在颜色后面

plt.plot(randn(30).cumsum(), 'ko--')

plot(randn(30).cumsum(),color='k',linestyle='dashed',marker='o')

刻度标签和图例

pyplot接口包含了xlim, xticks和xticklabels等方法,分别控制了绘图范围、刻度位置和刻度标签。有两种调用方式:

没有参数情况下,返回x轴的绘图范围

plt.xlim()

有参数情况下,将x轴范围设置成参数范围

plt.xlim([0,10])

设置x轴刻度和刻度标签

ticks = ax.set_xticks([0,250,500,750,1000])

lables=ax.set_xticklabels(['one','two','three','four','five'],rotation=30 ,fontsize='small') //retation=30表示旋转30度

可以给x轴一个名称

ax.set_xlabel('stages')

y轴同理

可以给子图一个标题

ax.set_title('my title matplotlib plot')

添加图例,图例是区分绘图元素的重要内容

ax.plot(np.random.randn(1000).cumsum(), 'k', label='one')

ax.plot(np.random.randn(1000).cumsum(), 'k--', label='two')

ax.plot(np.random.randn(1000).cumsum(), 'k.', label='three')

生成图例

ax.legend(loc='best') // loc参数指定图例位置,best自动找最适合位置

将图片保存到文件

可以使用plt.savefig将活动图片保存到文件。

plt.savefig('figpath.svg') //文件类型可以更改

文件格式可以更改,dpi控制分辨率,bbox_inches可以修剪实际图形的空白,tight表示最小空白

plt.savefig('figpath.png',dpi=400,bbox_inches='tight')

matplotlib设置

可以更改默认设置plt.rc('figure',figsize=(10,10))

rc的第一个参数是想要自定义的组件,比如‘figure','axes','xtick','grid','legend'

标签:plot,None,plt,基础,matplotlib,绘图,ax
From: https://www.cnblogs.com/xiaowuroommate/p/17521365.html

相关文章

  • 【笔试实战】LeetCode题单刷题-编程基础 0 到 1【一】
    1768. 交替合并字符串题目链接1768. 交替合并字符串题目描述给你两个字符串 word1 和 word2 。请你从 word1 开始,通过交替添加字母来合并字符串。如果一个字符串比另一个字符串长,就将多出来的字母追加到合并后字符串的末尾。返回 合并后的字符串 。示例1:输入:wor......
  • es 笔记二之基础查询
    本文首发于公众号:Hunter后端原文链接:es笔记二之基础查询这一篇笔记介绍es的基础查询。基础查询包括很多,比如排序,类似数据库limit的操作,like操作,与或非等,对于这些操作,我会在介绍他们的用法之后加上对应的数据库sql便于理解。注意:下面的操作都在kibana中实现以下是......
  • Tensorflow基础
    基础概念tensor:张量(数据)operation(op):专门运算的操作节点,所有操作都是一个opgrap:图,整个程序的结构Session:会话,运算程序的图Tensorflow属于计算密集型,大多是在cpu上进行计算。图图默认已经注册,一组表示tf.Operation计算单位的对象和tf.Tensor表示操作之间流动的数据单......
  • docker基础展示-2
    13.Dockerfile-构建JAVA网站镜像参考:https://blog.csdn.net/liukuan73/article/details/60880137该章节难点:理解CMD和ENTRYPOINT指令的区别CMD指令为ENTRYPOINT指令提供默认参数是基于镜像层次结构生效的,而不是基于是否在同个Dockerfile文件中。意思就是说,如果Dockerfile指定的......
  • 【numpy基础】--数组索引
    数组索引是指在numpy数组中引用特定元素的方法。numpy的数组索引又称为fancyindexing,比其他编程语言的索引强大很多。1.选取数据numpy的索引除了像其他语言一样选择一个元素,还可以间隔着选取多个元素,也可以用任意的顺序选取元素。比如一维数组:arr=np.random.randint(0,10......
  • 八期day05-java基础
    1Java环境搭建#合伙人---》下次讲#java:做反编译,发现好多java代码看不太懂,有些加密算法,也不太好破---》接下来的时候,要学习java开发 -找到加密算法---》chatgpt,让它给你写---》转成python---》自己手动调#java编译型语言 -javase:java基础---》python中变量定义,函数,......
  • 八期day06-java基础2
    零python和java字节字符串比较0.1java字节数组和字符串相互转换//1字符串转字节数组v4="彭于晏"byte[]b=v4.getBytes();//默认utf8形式System.out.println(b);//输出对象形式,看不到字节数组System.out.println(Arrays.toString(b));//try{//......
  • Mysql基础篇(三)之多表查询
    一.多表关系一对多(多对一)多对一一对一1.一对多(1).案例:部门与员工的关系(2).关系:一个部门对应多个员工,一个员工对应一个部门(3).实现:在多的一方建立外建,指向一的一方的主键2.多对多(1).案例:学生与课程的关系(2).关系:一个学生可以选修多门课程,一门课程也......
  • 传奇开服技术基础十条处理办法110.42.2
    1:怎么添加GM,游戏管理员!答:在游戏版本路径中的-MirServerMir200EnvirAdminList.txt文本内,从这里增添需要重新启动,为了方便都在M2server中进行增添M2-查询-文件列表信息-管理员列表中进行增添,增添好了即时生效.人物在游戏里需要小退开始生效!2:假如增添删除商铺物品!答:3K引擎......
  • Excel基础_2023/7/2
    典型函数=SUM()=AVERAGE()=IF(条件,命令1,命令2)相对引用(默认),绝对引用(加$在对应行/列)单元格统计函数COUNTCOUNTACOUNTBLANKCOUNTIF(区域,要记录的标准)/COUNTIFS推荐对不熟的函数使用参数面板。比较符号:><>=<=<>文本查找-通配符:?代表一个字,*代表有内容(但被两个......