python可视化散点图_Python散点图怎么画?Matplotlib数据可视化001:基础API汇总&散点图...

首先,来看常用的基础API:

1、解决中文乱码,防止方块化

plt.rcParams[“font.sans-serif”]=”SimHei”

2、解决负号不能正常显示的问题

plt.rcParams[“axes.unicode_minus”]=False

3、在jupyter notebook上面显示图片

%matplotlib inline

4、作图使用svg格式显示更为清晰

%config InlineBackend.figure_format=”svg”

5、设置画布大小

plt.figure(figsize=(16,8))  #长为16,宽为8

6、创建子图

fig=plt.figure()

fig.add_subplot(3,2,2)  #3X2的第2个图形

或者plt.subplot(3,2,2)    #3X2的第2个图形

7、作图函数

折线图plot():

一个变量随时间变化的趋势关系。

条形图bar()  水平条形图barh():

分类变量或者离散变量的数量的多少。

散点图scatter():

因变量随自变量而变化的大致趋势。

饼图pie():

分类变量的占比分布。

箱线图boxplot():

一组数据分散情况。

直方图hist()

一个连续变量(定量变量)的概率分布的估计。

如下,均可通过help()命令查看API,用到什么查什么:

8、标题:plt.title()

9、x轴、y轴的标题:plt.xlabel()  plt.ylabel()

10、x轴、y轴刻度:plt.xticks()  plt.yticks()

11、x轴、y轴范围:plt.xlims()    plt.ylims()

12、添加数据标签:plt.text()

13、添加注释:plt.annotate()

14、添加图例:plt.legend()

15、添加数据表:plt.table()

16、网格显示:plt.grid()

17、结果展示:plt.show()

Matplotlib绘制散点图

散点图的API:  help(plt.scatter)

matplotlib.pyplot.scatter(x, y, s=None, c=None, marker=None, cmap=None, norm=None, vmin=None, vmax=None, alpha=None, linewidths=None, verts=None, edgecolors=None, *, data=None, **kwargs)

常用参数解释:

x,y:表示即将绘制散点图的数据点

s:是一个可选的参数。

c:表示的是颜色,也是一个可选项。

marker:表示的是标记的样式,默认的是’o’。

alpha:实数,0-1之间。

x=np.random.rand(50)

y=np.random.rand(50)

colors=np.random.rand(50)  #颜色随机

area=(20*np.random.rand(10))**2  #散点的大小随机

fig=plt.figure(figsize=(10,5))

plt.subplot(1,1,1)

plt.scatter(x,y,s=area,marker=”o”,c=colors)

#设置标题

plt.title(“plot of scatter for x to y”,fontdict={‘fontsize’:20,’color’:’blue’},loc=’center’)

# 设置x轴和y轴的轴标题

plt.xlabel(“x for x in range(50)”,fontdict={‘fontsize’:10,’color’:’blue’})

plt.ylabel(“y for y in range(50)”,fontdict={‘fontsize’:10,’color’:’blue’})

# 添加图例

# plt.legend(‘xfory’)

# 添加数字标签

for a,b in zip(x,y):

plt.text(round(a,2),round(b,2),round(b,2),ha=”center”,va=’top’,fontdict={‘fontsize’:7,’color’:’black’})

plt.xlim(0,1)  #x轴的坐标轴取值范围

# 给坐标A添加标注A(x10,y10)

plt.annotate(“A(x,y)”,xy=(x[10],y[10]),fontsize=15)

效果图如下

wAAACwAAAAAAQABAEACAkQBADs=

解读:

1、colors=np.random.rand(50):给定颜色变化

c=colors改为c=”red”,则所有的点颜色都是单一一种颜色:红色

2、area=(20*np.random.rand(10))**2:给定每个点的大小变化

s=area  改为s=100或者特定数字,则所有点的大小一样

3、plt.title、plt.xlabel() 、plt.ylabel中字体的设置,给到自定义字典

fontdict={‘fontsize’:20,’color’:’blue’}

4、plt.text():设置数值标签

添加数字标签 固定写法,字体属性给定指定字典fontdict

for a,b in zip(x,y):

plt.text(a,b,b,,ha=”center”,va=’top’,fontdict={‘fontsize’:7,’color’:’black’})

你已经掌握的一部分散点图的基础。不加标签,不设置标题的裸图,貌似清爽好看了些。。。

wAAACwAAAAAAQABAEACAkQBADs=

原文链接:

https://mp.weixin.qq.com/s/5zq7A74WQygdMV1CUY2wzw

还有好多干货,实战案例:

wAAACwAAAAAAQABAEACAkQBADs=

关注公众号,都在里面!

wAAACwAAAAAAQABAEACAkQBADs=

https://www.jianshu.com/p/0ed799faaa4a

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值