Python绘制散点图之可视化神器pyecharts


Posted in Python onJuly 07, 2022

散点图

什么是散点图?

散点图是指在数理统计回归分析中,数据点在直角坐标系平面上的分布图, 散点图​​表示因变量随自变量而变化的大致趋势,由此趋势可以选择合适的函数进行经验分布的拟合,进而找到变量之间的函数关系。

散点图有什么用处?

  • 1、数据用图表来展示,显然比较直观,在工作汇报等场合能起到事半功倍的效果,让听者更容易接受,理解你所处理的数据。
  • 2、散点图更偏向于研究型图表,能让我们发现变量之间隐藏的关系为我们决策作出重要的引导作用。
  • 3、散点图核心的价值在于发现变量之间的关系,千万不要简单地将这个关系理解为线性回归关系。变量间的关系有很多,如线性关系、指数关系、对数关系等等,当然,没有关系也是一种重要的关系。
  • 4、散点图经过回归分析之后,可以对相关对象进行预测分析,进而做出科学的决策,而不是模棱两可。比如说:医学里的白细胞散点图可以在医学检测方面为我们健康提供精确的分析,为医生后续的判断做出重要的技术支持。

散点图的基本构成要素

散点图主要的构成元素有:数据源,横纵坐标轴,变量名,研究的对象。而基本的要素就是点,也就是我们统计的数据,由这些点的分布我们才能观察出变量之间的关系。

而散点图一般研究的是两个变量之间的关系,往往满足不了我们日常的需求。因此,气泡图的诞生就是为散点图增加变量,提供更加丰富的信息,点的大小或者颜色可以定义为第三个变量,因为,做出来的散点图类似气泡,也由此得名为气泡图。

散点图模板系列

简单散点图

数据越多散点图呈现的效果就越明显。这也就是我们平时在进行建模的时候,采用回归拟合的原则,如果数据是遵循某种函数关系,我们可以通过机器进行训练,不断的迭代达到最优效果。

import pyecharts.options as opts
from pyecharts.charts import Scatter

data = [
[10.0, 8.04],
[8.0, 6.95],
[13.0, 7.58],
[9.0, 8.81],
[11.0, 8.33],
[14.0, 9.96],
[6.0, 7.24],
[4.0, 4.26],
[12.0, 10.84],
[7.0, 4.82],
[5.0, 5.68],
]
data.sort(key=lambda x: x[0])
x_data = [d[0] for d in data]
y_data = [d[1] for d in data]

(
Scatter(init_opts=opts.InitOpts(width="1200px", height="600px"))
.add_xaxis(xaxis_data=x_data)
.add_yaxis(
series_name="",
y_axis=y_data,
symbol_size=20,
label_opts=opts.LabelOpts(is_show=False),
)
.set_series_opts()
.set_global_opts(
xaxis_opts=opts.AxisOpts(
type_="value", splitline_opts=opts.SplitLineOpts(is_show=True)
),
yaxis_opts=opts.AxisOpts(
type_="value",
axistick_opts=opts.AxisTickOpts(is_show=True),
splitline_opts=opts.SplitLineOpts(is_show=True),
),
tooltip_opts=opts.TooltipOpts(is_show=False),
)
.render("简单散点图.html")
)

Python绘制散点图之可视化神器pyecharts

多维数据散点图

我们在平时的运用场景中,发现散点图太多呈现的效果图太密集了,我们只需要知道某一个区域它分布的数量,本来柱状图可以解决,但是这个散点图一个更好,可以反映区域的分布,主要可以看见它的数量趋势变化,根据自己的业务需求来使用吧。

from pyecharts import options as opts
from pyecharts.charts import Scatter
from pyecharts.commons.utils import JsCode
from pyecharts.faker import Faker

c = (
Scatter()
.add_xaxis(Faker.choose())
.add_yaxis(
"类别1",
[list(z) for z in zip(Faker.values(), Faker.choose())],
label_opts=opts.LabelOpts(
formatter=JsCode(
"function(params){return params.value[1] +' : '+ params.value[2];}"
)
),
)
.set_global_opts(
title_opts=opts.TitleOpts(title="多维度数据"),
tooltip_opts=opts.TooltipOpts(
formatter=JsCode(
"function (params) {return params.name + ' : ' + params.value[2];}"
)
),
visualmap_opts=opts.VisualMapOpts(
type_="color", max_=150, min_=20, dimension=1
),
)
.render("多维数据散点图.html")
)
print([list(z) for z in zip(Faker.values(), Faker.choose())])

Python绘制散点图之可视化神器pyecharts

散点图显示分割线

显示分割线,其实和之前的没有异样。

from pyecharts import options as opts
from pyecharts.charts import Scatter
from pyecharts.faker import Faker
c = (
Scatter()
.add_xaxis(Faker.choose())
.add_yaxis("A", Faker.values())
.set_global_opts(
title_opts=opts.TitleOpts(title="标题"),
xaxis_opts=opts.AxisOpts(splitline_opts=opts.SplitLineOpts(is_show=True)),
yaxis_opts=opts.AxisOpts(splitline_opts=opts.SplitLineOpts(is_show=True)),
)
.render("分割线.html")
)

Python绘制散点图之可视化神器pyecharts

散点图凸出大小(二维)

用二维的数据来展示每个类别的分布状况,图表可显示多个类别,这样极大的增强了我们解释的效果。

from pyecharts import options as opts
from pyecharts.charts import Scatter
from pyecharts.faker import Faker
c = (
Scatter()
.add_xaxis(Faker.choose())
.add_yaxis("1", Faker.values())
.add_yaxis("2", Faker.values())
.set_global_opts(
title_opts=opts.TitleOpts(title="标题"),
visualmap_opts=opts.VisualMapOpts(type_="size", max_=150, min_=20),
)
.render("凸出大小散点图.html")
)

Python绘制散点图之可视化神器pyecharts

 3D散点图展示

Python绘制散点图之可视化神器pyecharts

动态涟漪散点图

之前的散点都是静态的,下面我们来看看动态的散点图;

from pyecharts import options as opts
from pyecharts.charts import EffectScatter
from pyecharts.faker import Faker
c = (
EffectScatter()
.add_xaxis(Faker.choose())
.add_yaxis("", Faker.values())
.set_global_opts(title_opts=opts.TitleOpts(title="散点图"))
.render("动态散点图.html")
)

Python绘制散点图之可视化神器pyecharts

箭头标志散点图

from pyecharts import options as opts
from pyecharts.charts import EffectScatter
from pyecharts.faker import Faker
from pyecharts.globals import SymbolType

c = (
EffectScatter()
.add_xaxis(Faker.choose())
.add_yaxis("", Faker.values(), symbol=SymbolType.ARROW)
.set_global_opts(title_opts=opts.TitleOpts(title="标题"))
.render("箭头动态散点图.html")
)

Python绘制散点图之可视化神器pyecharts

到此这篇关于Python绘制散点图之可视化神器pyecharts的文章就介绍到这了,更多相关Python绘制散点图内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!


Tags in this post...

Python 相关文章推荐
采用Psyco实现python执行速度提高到与编译语言一样的水平
Oct 11 Python
浅析Python中的赋值和深浅拷贝
Aug 15 Python
Python3.5字符串常用操作实例详解
May 01 Python
用pyqt5 给按钮设置图标和css样式的方法
Jun 24 Python
Python登录系统界面实现详解
Jun 25 Python
python频繁写入文件时提速的方法
Jun 26 Python
Python @property原理解析和用法实例
Feb 11 Python
pytorch实现MNIST手写体识别
Feb 14 Python
python 的numpy库中的mean()函数用法介绍
Mar 03 Python
Python jieba结巴分词原理及用法解析
Nov 05 Python
Python在后台自动解压各种压缩文件的实现方法
Nov 10 Python
一篇文章教你用python画动态爱心表白
Nov 22 Python
Python可视化神器pyecharts之绘制箱形图
Jul 07 #Python
Python通用验证码识别OCR库ddddocr的安装使用教程
Jul 07 #Python
Django数据库(SQlite)基本入门使用教程
Jul 07 #Python
Python可视化神器pyecharts之绘制地理图表练习
Django中celery的使用项目实例
Python可视化神器pyecharts绘制地理图表
Python软件包安装的三种常见方法
You might like
PHP教程 基本语法
2009/10/23 PHP
php使用explode()函数将字符串拆分成数组的方法
2015/02/17 PHP
详解WordPress中用于更新和获取用户选项数据的PHP函数
2016/03/08 PHP
PHP实现防盗链的方法分析
2017/07/25 PHP
Laravel框架使用monolog_mysql实现将系统日志信息保存到mysql数据库的方法
2018/08/16 PHP
goto语法在PHP中的使用教程
2020/09/17 PHP
可以显示单图片,多图片ajax请求的ThickBox3.1类下载
2007/12/23 Javascript
ext监听事件方法[初级篇]
2008/04/27 Javascript
jQuery下通过$.browser来判断浏览器.
2011/04/05 Javascript
jquery中$.post()方法的简单实例
2014/02/04 Javascript
jquery实现简单实用的打分程序实例
2015/07/23 Javascript
js实现的页面矩阵图形变换特效
2016/01/26 Javascript
JQuery点击事件回到页面顶部效果的实现代码
2016/05/24 Javascript
jQuery EasyUI学习教程之datagrid点击列表头排序
2016/07/09 Javascript
Angular.js基础学习之初始化
2017/03/10 Javascript
Vue学习笔记进阶篇之过渡状态详解
2017/07/14 Javascript
微信小程序scroll-view组件实现滚动动画
2018/01/31 Javascript
AngularJS 应用模块化的使用
2018/04/04 Javascript
关于Vue在ie10下空白页的debug小结
2018/05/02 Javascript
js实现删除li标签一行内容
2019/04/16 Javascript
微信网页登录逻辑与实现方法
2019/04/29 Javascript
JS Array.from()将伪数组转换成数组的方法示例
2020/03/23 Javascript
vue实现放大镜效果
2020/09/17 Javascript
vue+springboot+element+vue-resource实现文件上传教程
2020/10/21 Javascript
vue实现购物车的小练习
2020/12/21 Vue.js
[52:08]DOTA2上海特级锦标赛主赛事日 - 3 败者组第三轮#2Fnatic VS OG第一局
2016/03/05 DOTA
[01:05]主宰至宝剑心之遗
2017/03/16 DOTA
python实现ip地址查询经纬度定位详解
2019/08/30 Python
python实现两个一维列表合并成一个二维列表
2019/12/02 Python
Pytorch 扩展Tensor维度、压缩Tensor维度的方法
2020/09/09 Python
详解HTML5中的标签
2015/06/19 HTML / CSS
Bed Bath & Beyond加拿大官网:购买床上用品、浴巾、厨房电器等
2019/10/04 全球购物
《她是我的朋友》教学反思
2014/04/26 职场文书
抗震救灾标语
2014/06/26 职场文书
mybatis中sql语句CDATA标签的用法说明
2021/06/30 Java/Android
Python+Selenium实现抖音、快手、B站、小红书、微视、百度好看视频、西瓜视频、微信视频号、搜狐视频、一点号、大风号、趣头条等短视频自动发布
2022/04/13 Python