python_matplotlib分别使用plot()和scatter()画散点图,以及如何改变点的大小
1. 使用plot()画散点图
根据关于matplotlip.pyplot的官方文档:pyplot,其plot部分的解释plot()的作用是画出线条和线条上的标记:
根据pyplot的官方教学文档:Pyplot tutorial,如果不改变其默认设置,画出的是蓝色的线条,即"b-":
代码示例:
import numpy as np
import matplotlib.pyplot as pltx = np.arange(0,10,1)plt.plot(x,x+0)plt.show()
画出的效果为一条蓝色的直线:
plt.plot(x,x+0)
等价于
plt.plot(x,x+0,'-')
而可以看到,[x, x+0]表示的是一个二维数组,每一维是从0到9这10个整数,或者说10个点。plot()的作用就是用某种方式将这10个点建立连接,不过其默认方式使用线条连接。现考虑如果是用点或圈而不是线条的方式将这10个点连接起来,画出的就是散点图。
从pyplot可以查到,控制线条的种类的字符串可以为'--', '-.', ':', '.'等等:
故现在考虑用'.'或'o'代替'-'连接这些点。
将'o'代替'-'的示例:
import numpy as np
import matplotlib.pyplot as pltx = np.arange(0,10,1)plt.plot(x,x+0,'o')plt.show()
画出的效果是10个散点图:
用于画出随机点的示例:
import matplotlib.pyplot as plt
import numpy as npdef rand_data():return np.random.uniform(low=0., high=1., size=(100,))# Generate data.
x1, y1 = [rand_data() for i in range(2)]plt.plot(x1,y1, 'o',color='b')plt.show()
100个随机点的散点图效果:
2. 使用scatter()画散点图
根据官方文档:matplotlib.pyplot.scatter的定义,scatter()是用来画散点图的:
和plot()相同,scatter()的作用也是将画出的点连接起来,不过其默认连接方式是'o',即点的方式:
示例:
import numpy as np
import matplotlib.pyplot as pltx = np.arange(0,10,1)plt.scatter(x,x+0)plt.show()
plt.scatter(x,x+0)
效果和
plt.plot(x,x+0,'o')
的效果相同:
3. plot()和scatter()改变点的大小
plot()中改变点的大小的参数是markersize 或 ms:
而scatter()中改变点的大小的参数是s:
示例:
import numpy as np
import matplotlib.pyplot as pltx = np.arange(0,10,1)plt.plot(x,x+0,'o',markersize=4.,color=(0.8,0.,0.))
plt.scatter(x,x+1,s=16.,color=(0.,0.5,0.))plt.show()
效果:
可以看到,plot()的markersize设为4.0,和scatter()的s设为16.0,画出的点大小相同。
这里matplotlib.pyplot.scatter有解释, scatter()中参数s表示的大小,和plot()的markersize大小的平方相同,即[s]=markersize**2,下图参考:pyplot scatter plot marker size
4. 加入图例(legend)后图例中点的大小和数量
加入图例(legend)后,根据官方参考文档:matplotlib.pyplot.legend
参数markerscale是用于调整legend中点和实际图中画出的点的大小关系,若设markersize=1.0,则legend中的点的大小和图中画出的点大小相同;若设markersize=2.0,则legend中的点的大小是图中画出点的大小的2倍。
而numpoints参数作用于调整用线条画出的点,即用plot()画出的点,legend中的点的数目,而scatterpoints参数作用于调整用散点图画出的点,即scatter()画出的点,legend中的点的数目:
markerscale,numpoints和scatterpoints3个参数默认值都为1。
下面加入图例,更改plot()画出的点在legend中点的数量为2,且legend中点的大小为原图的2倍:
import numpy as np
import matplotlib.pyplot as pltx = np.arange(0,10,1)
#print(x)
plt.plot(x,x+0,'o',label='x+0',markersize=4.,color=(0.8,0.,0.))
plt.scatter(x,x+1,label='x+1',marker='o',s=16.0,color=(0.,0.5,0.))
plt.legend(loc="best",markerscale=2.,numpoints=2,scatterpoints=1,fontsize=12)
plt.show()
效果为:
更改scatterpoints大小也为2, 即scatter()画出的点在legend中显示数量为2:
import numpy as np
import matplotlib.pyplot as pltx = np.arange(0,10,1)
#print(x)
plt.plot(x,x+0,'o',label='x+0',markersize=4.,color=(0.8,0.,0.))
plt.scatter(x,x+1,label='x+1',marker='o',s=16.0,color=(0.,0.5,0.))
plt.legend(loc="best",markerscale=2.,numpoints=2,scatterpoints=2,fontsize=12)
plt.show()
效果为:
其它参数未变。
python_matplotlib分别使用plot()和scatter()画散点图,以及如何改变点的大小相关推荐
- 用plt.scatter画散点图
创建散点图可以使用函数 plt.scatter.它的功能非常强大,其用法与 plt.plot 函数类似: import numpy as np rng = np.random.RandomState( ...
- python画散点图<plt.scatter() 和sns.scatterplot()>
plt.scatter()画散点图 (matplotlib.pyplot.scatter) ------------------------------------------------------ ...
- python画散点图-Python:matplotlib绘制散点图
与线型图类似的是,散点图也是一个个点集构成的.但不同之处在于,散点图的各点之间不会按照前后关系以线条连接起来. 用plt.plot画散点图 奇怪,代码和前面的例子差不多,为什么这里显示的却是散点图而不 ...
- python画散点图程序-python画散点图
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 用散点图可以直观的查看数据的分布情况. matplotlib模块的pyplot有 ...
- python画散点图和折线图
前提:画图必须要有数据,散点图数据自己构造的,折线图数据是通过线性回归模型预测的 from sklearn.linear_model import LinearRegression import ma ...
- scatter python cmap_使用matplotlib中scatter方法画散点图
本文实例为大家分享了用matplotlib中scatter方法画散点图的具体代码,供大家参考,具体内容如下 1.最简单的绘制方式 绘制散点图是数据分析过程中的常见需求.python中最有名的画图工具是 ...
- R语言ggplot2可视化散点图(scatter plot)、使用scale_size函数自定义指定散点大小的度量、scale_fill_distiller函数自定义指定散点的颜色映射(填充色的度量)
R语言ggplot2可视化散点图(scatter plot).使用scale_size函数自定义指定散点大小的度量.scale_fill_distiller函数自定义指定散点的颜色映射(填充色的度量) ...
- MATLAB scatter 画二维/三维散点图时 用颜色表示数值大小 colorbar
MATLAB scatter 画二维/三维散点图时 用颜色表示数值大小 自己在编程的时候,没有在网上找到很好的解释. 所以把我的代码贴出来,给遇到同样问题的盆友一个参考~ 带注释.看不懂的地方可以给我 ...
- python读取excel画散点图-matplotlib两种画散点图的方式
对于matplotlib.pyplot( as plt ) 先输入主体数据部分: importnumpy as npimportmatplotlib.pyplot as plt X_train= np ...
最新文章
- SZUACM集训字符串基础总结: 字符串最小表示 ,KMP, EXKMP, Manracher, Trie树,字符串的hash; 附带一写常见的运用技巧,邝斌大佬的板子和例题[持续更新]
- Leetcode 136 Single Number 仅出现一次的数字
- luogu P3796【模板】AC自动机(加强版)
- 详解语义分割评价指标
- Codeforces 527C Glass Carving (最长连续0变形+线段树)
- kubernetes系列10—存储卷详解
- 数据结构之线索化二叉树
- 可见的轮廓线用虚线绘制_CAD制图初学入门教程:CAD软件中如何绘制轴测图?
- 11300001数据集配置错误_Power BI 中的数据刷新(二)
- StyleGAN图像风格转换相关经典论文、项目、数据集等资源整理分享
- Himall商城枚举帮助类EnumHelper(3)
- Windows xp 驱动EPSON MT532打印小票始末
- 数据库出错提示Duplicate entry * for key *的解决方法
- 团队任务:第二次冲刺-第三组梦之队
- 图像目标检测和视频目标检测文献综述
- Android studio通过科大讯飞的SDK实现文字转语音功能
- 对cross-env的理解
- 三国志战略版:萌新手册系列_总结
- 写需求规格说明书/产品定义的个人总结
- 阿里巴巴技术部面试题——经典智力问题收集