python绘制两个离散变量关系图——马赛克图
一个比较好看的图如下:
我们可以较为直观的看到两个离散变量之间的关系,python绘制方法也比较简单
可以使用statsmodels.graphics.mosaicplot.mosaic
文档位置:https://www.statsmodels.org/dev/generated/statsmodels.graphics.mosaicplot.mosaic.html
代码示例
首先是一个比较基础的版本:
import pandas as pd
import numpy as np
from statsmodels.graphics.mosaicplot import mosaicdef get_data() -> pd.DataFrame:"""获得数据"""value1 = ['a', 'b', 'c']value2 = [1, 2, 3, 4, 5]dataframe = pd.DataFrame(data=[np.random.choice(value1, 100),np.random.choice(value2, 100),]).Tdataframe.columns = ['col_1', 'col_2']return dataframeif __name__ == '__main__':df = get_data()fig, tuple_data = mosaic(df, ['col_1', 'col_2'])fig.show()
还有其他可以自定义操作的地方:
import pandas as pd
import numpy as np
from statsmodels.graphics.mosaicplot import mosaicdef get_data() -> pd.DataFrame:"""获得数据"""value1 = ['a', 'b', 'c']value2 = [1, 2, 3, 4, 5]dataframe = pd.DataFrame(data=[np.random.choice(value1, 100),np.random.choice(value2, 100),]).Tdataframe.columns = ['col_1', 'col_2']return dataframeif __name__ == '__main__':df = get_data()# 自定义操作# properties: 定义每一个块的颜色props = {}props[('a', '1')] = {'facecolor': 'red', 'edgecolor': 'white'}# labelizer: 马赛克图的labelfig, tuple_data = mosaic(df, ['col_1', 'col_2'], properties=props)fig.show()
效果图如下:
python绘制两个离散变量关系图——马赛克图相关推荐
- 可视化篇(四)——— python绘制双y轴、箱线图、概率分布三种图形及案例
可视化篇(四)--- python绘制双y轴.箱线图.概率分布三种图形及案例 摘要 绘制双y轴图形 绘制箱线图 绘制概率分布图 摘要 本文演示了如何通过python绘制双y轴.箱线图.概率分布三种图形 ...
- 可视化:python绘制多组多维数据雷达图
超过3维的数据用雷达图可以十分直观地展示.本文实践过程中以灰度共生矩阵的4项常用指标为例. python绘制多组多维数据雷达图 所使用的数据如下所示:每一行是一个样本,每个样本有4维特征(列). 封装 ...
- python双坐标轴箱线图,python绘制双y轴、箱线图、概率分布三种图形及案例
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. 本文演示了如何通过python绘制双y轴.箱线图.概率分布三种图形,并给出了具体案例源代码供 ...
- 用Python绘制各国新冠肺炎确诊病例发展趋势图
前两天看到英国金融时报上面有两张各国新冠肺炎确诊和死亡病例的发展趋势图,我觉得这张图信息量挺大的,能看出来各国在应对疫情方面措施的效果,尤其是前一段网络上有太多情绪化而缺乏数据支持的文字,当然也有很多 ...
- python 绘制两组数据的分布图
可以使用 Python 中的 Matplotlib 库来绘制两组数据的分布图.下面是一个简单的示例代码: import matplotlib.pyplot as plt# 假设有两组数据,分别是 x ...
- python绘制两条折线图
from pylab import * # 这里可以调整图片大小 plt.figure(figsize=(18,9)) # x轴 x_axis_data = ['9-26','9-27', '9-28 ...
- python绘制对数函数_python中如何画对数函数图?
小伙伴们还记不记得,在高考数学题后面的大题总会出现对数函数,需要我们画成对数函数图才能解答.之前小编向大家介绍对数log函数的表示方法(https://www.py.cn/jishu/jichu/21 ...
- 十分钟用 Python 绘制了近十年编程语言趋势图
先来个视频体验一下效果,文末还有视频教程 1. 分析 我们需要获取数据,所以第一步需要从tiobe抓取近几年的top编程语言的占比情况,其次存入 csv,最后使用 Python 绘制成表格. 2. 安 ...
- Python学习笔记_多张图片生成马赛克图
原文链接:使用Python简单实现马赛克拼图 代码如下: import os import time from functools import reduce from threading impor ...
最新文章
- 光刻技术的“鬼斧”之变
- android从放弃到精通第10天 勿忘初心
- 计算机编程导论python程序设计答案-学堂在线_计算机科学与Python编程导论_作业课后答案...
- 初识linux以及bash的部分使用及技巧
- CLASS ALV Event
- Fragment创建添加切换和对应底部导航(二)
- 【线段树】FREQUENT - Frequent values(luogu-SP1684 / poj 3368)
- Linux 4.15 rc7,Linux学习之十五(sed命令)-2017-4-23
- Bootstrap简介
- HTTP权威指南记录 ---- 网络爬虫
- 查询系统是使用 MBR 还是 GPT 分区 (Windows 和 Linux)
- Docker从理论到实践(三)------配置你的DaoCloud的Docker镜像源加速器
- FFmpeg获取H264文件的帧率
- 遗传算法求解多约束、多类型车辆、多目标优化的车辆路径问题
- 弘辽科技:淘宝店铺排名下降了该怎么去解决呢?
- 服装计算机辅助设计论文,服装设计计算机辅助设计应用探索-服装设计论文-设计论文.docx...
- 论文笔记:Meta-attention for ViT-backed Continual Learning CVPR 2022
- Domain Generalization数据集整理
- 机器学习案例:孕妇吸烟与胎儿健康
- 6个usb口服务器无响应,win7usb接口没反应怎么办_win7usb接口没反应的解决方法