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 相关文章推荐
Ubuntu下安装PyV8
Mar 13 Python
python数据抓取分析的示例代码(python + mongodb)
Dec 25 Python
Python3.6通过自带的urllib通过get或post方法请求url的实例
May 10 Python
Python设计模式之策略模式实例详解
Jan 21 Python
完美解决python3.7 pip升级 拒绝访问问题
Jul 12 Python
Pytorch 实现自定义参数层的例子
Aug 17 Python
pandas read_excel()和to_excel()函数解析
Sep 19 Python
python 实现生成均匀分布的点
Dec 05 Python
python cv2截取不规则区域图片实例
Dec 21 Python
Python SSL证书验证问题解决方案
Jan 13 Python
用python实现学生管理系统
Jul 24 Python
python 使用csv模块读写csv格式文件的示例
Dec 02 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短网址的生成代码(仿微博短网址)
2014/05/07 PHP
php数组函数array_walk用法示例
2016/05/26 PHP
23个Javascript弹出窗口特效整理
2011/02/25 Javascript
推荐40款强大的 jQuery 导航插件和教程(上篇)
2012/09/14 Javascript
JS实现侧悬浮浮动实例代码
2013/11/29 Javascript
Javascript中call与apply的学习笔记
2014/09/22 Javascript
WEB前端开发都应知道的jquery小技巧及jquery三个简写
2015/11/15 Javascript
JavaScript作用域示例详解
2016/07/07 Javascript
Javascript中常见的逻辑题和解决方法
2016/09/17 Javascript
手动初始化Angular的模块与控制器
2016/12/26 Javascript
jquery实现多次上传同一张图片
2017/01/09 Javascript
详解Javascript中new()到底做了些什么?
2018/03/29 Javascript
ES6基础之默认参数值
2019/02/21 Javascript
JavaScript数组、json对象、eval()函数用法实例分析
2019/02/21 Javascript
js实现淘宝首页的banner栏效果
2019/11/26 Javascript
javascript实现点击产生随机图形
2021/01/25 Javascript
在Linux上安装Python的Flask框架和创建第一个app实例的教程
2015/03/30 Python
Python中字典的setdefault()方法教程
2017/02/07 Python
Python简单实现控制电脑的方法
2018/01/22 Python
python爬虫获取多页天涯帖子
2018/02/23 Python
详谈Numpy中数组重塑、合并与拆分方法
2018/04/17 Python
解决pyinstaller打包exe文件出现命令窗口一闪而过的问题
2018/10/31 Python
Python爬虫beautifulsoup4常用的解析方法总结
2019/02/25 Python
python实现文件助手中查看微信撤回消息
2019/04/29 Python
python开头的coding设置方法
2019/08/08 Python
Python进阶之使用selenium爬取淘宝商品信息功能示例
2019/09/16 Python
解决ROC曲线画出来只有一个点的问题
2020/02/28 Python
Python函数__new__及__init__作用及区别解析
2020/08/31 Python
python爬虫爬取图片的简单代码
2021/01/18 Python
HTML5新特性之语义化标签
2017/10/31 HTML / CSS
办理退休介绍信
2014/01/09 职场文书
家庭财产分割协议范文
2014/11/24 职场文书
办公室主任岗位职责
2015/01/31 职场文书
解除租赁合同协议书
2016/03/21 职场文书
经典哲理警句:志不真则心不热,心不热则功不贤
2019/11/14 职场文书
centos环境下nginx高可用集群的搭建指南
2022/07/23 Servers