Seaborn是基于matplotlib的Python可视化库。 它提供了一个高级界面来绘制有吸引力的统计图形。Seaborn其实是在matplotlib的基础上进行了更高级的API封装,从而使得作图更加容易,不需要经过大量的调整就能使你的图变得精致。

这里的难点是我想完成小提亲图的hue分类,这一点必须在seaborn库的violinplot函数中,将hue设置为你想要作为区分的类别,同时split参数设置为True:

import pandas as pd

import numpy as np

import seaborn as sns

import matplotlib.pyplot as plt

import xlrd

tips = pd.read_excel('volin2.xlsx')

sns.violinplot(x= "class",y="score",data=tips,

hue="weighted",

split=True,

linewidth = 2, #线宽

width = 0.8, #箱之间的间隔比例

palette = 'muted', #设置调色板

order = ['Math' , 'Art' , 'Music' , 'Stories', 'Animations','Games'], #筛选类别

# scale = 'count', #测度小提琴图的宽度: area-面积相同,count-按照样本数量决定宽度,width-宽度一样

gridsize = 50, #设置小提琴图的平滑度,越高越平滑

# inner = 'box', #设置内部显示类型 --> 'box','quartile','point','stick',None

#bw = 0.8 #控制拟合程度,一般可以不设置

)

plt.show()

直接上了代码,这里我的数据是一个excel表格,有一个很坑的点是,seaborn官方引入数据的方式是使用tips = sns.load_dataset('tips')语句,其中tips竟然是他内置的一个数据集,这也太坑了。

通过查资料,最后确定是导入数据的方式是使用pandas库:tips = pd.read_excel('volin2.xlsx'),一句话解决。

我的数据集大概是3行,这里一定要将数据集调整成violinplot可以接受的格式:

三列分别是作品类别,作品分数,和作品是否被加权,最后小提琴图再细分的依据就是作品是否被加权

最后代码效果如下:

这里有一个巨坑,网上所有的教程,在筛选类别的时候,都是使用的大括号{ },这会导致下面的math,art等等6类的顺序在每次运行时候发生随机的变化!

修改成:

order = ['Math' , 'Art' , 'Music' , 'Stories', 'Animations','Games'], #筛选类别

使用中括号,解决这个问题。

还有一个大坑就是图的导出,如果需要得到清晰度高的pdf文件,需要在cmd中运行这个程序,但是在cmd运行的时候出现了一个困扰我一个半小时的问题!提示我缺包,但是在pycharm中是不缺的。

网上教程一大堆,大致都是说在cmd找包的方式和ide不一样,但是所有方法全部试过,通通不适用。

最后我的方法是:在cmd中,使用pip安装提示缺的包:python -m install XX

缺啥安装啥,最后成功之后,弹出结果图,保存为pdf文件,大功告成。

这里使用python3是因为我python2和3都有安装的原因。

python绘制小提琴图_关于使用python seaborn库绘制violinplot小提琴图的一些小坑相关推荐

  1. Py之seaborn:数据可视化seaborn库(二)的组合图可视化之密度图/核密度图分布可视化、箱型图/散点图、小提琴图/散点图组合可视化的简介、使用方法之最强攻略(建议收藏)

    Py之seaborn:数据可视化seaborn库(二)的组合图可视化之密度图/核密度图分布可视化.箱型图/散点图.小提琴图/散点图组合可视化的简介.使用方法之最强攻略(建议收藏) 目录 二.组合图可视 ...

  2. Py之seaborn:数据可视化seaborn库(三)的矩阵图可视化之jointplot/JointGrid/pairplot/PairGrid/FacetGrid密度图等的函数源代码详解之最强攻略

    Py之seaborn:数据可视化seaborn库(三)的矩阵图可视化之jointplot/JointGrid/pairplot/PairGrid/FacetGrid折线图/柱状图+散点图/矩形密度图的 ...

  3. python绘制小提琴图片_手把手教你用 Origin 绘制小提琴图

    在统计图像里面,小提琴图算是比较漂亮的一种图形了. 常见的小提琴图绘制方法包括 graphpad, R 语言,python 等,今天给大家介绍如何用 Origin 绘制小提琴图. 注明一点:Origi ...

  4. python画矢量图_使用基于matplotlib的SciencePlots绘制精美图表

    开源项目地址:https://github.com/garrettj403/SciencePlots 安装这个包,需要输入魔法: pip install SciencePlots 例如绘制如下函数,导 ...

  5. python绘制饼图双层_有趣!如何用Python-matplotlib绘制双层饼图及环形图?

    (1) 饼图(pie),即在一个圆圈内分成几块,显示不同数据系列的占比大小,这也是我们在日常数据的图形展示中最常用的图形之一. 在python中常用matplotlib的pie来绘制,基本命令如下所示 ...

  6. python画车辆轨迹图_如何利用 Python 绘制酷炫的 车辆轨迹 — 速度时空图?三维数据用二维图像呈现...

    说明:本文系交通攻城狮原创文章,如需转载请私信联系,侵权必究. 2020,第 30 期,编程笔记 建议直接阅读精编版:如何利用 Python 绘制酷炫的 车辆轨迹 - 速度时空图?三维数据用二维图像呈 ...

  7. Python设置画布大小_我用Python的Seaborn库绘制17个超好看图表

    点击上方" Python爬虫与数据挖掘 ",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 风朝露夜阴晴里,万户千门开闭时 ...

  8. python slice函数画高维图_没想到Python还能画六维图

    我们的大脑通常最多能感知三维空间,超过三维就很难想象了.尽管是三维,理解起来也很费劲,所以大多数情况下都使用二维平面. 来自维基百科 不过,我们仍然可以绘制出多维空间,今天就来用 Python 的 p ...

  9. 怎么用python海龟画五角星_海龟编辑器五角星怎么画 绘制五角星就是这么简单...

    海龟编辑器作为一款面向少儿的Python编辑器,它可以让孩子通过图形化的方式学习Python,很多用户在刚开始使用时不知道怎么绘制最基本的图形,小编将绘制五角星的方式通过两种方法进行讲解,想知道的赶快 ...

最新文章

  1. mongodb模糊查询包含特殊字符
  2. JSP简单练习-JSP动作指令
  3. 08-图9 关键活动 (30 分
  4. 是隐极电机_资料 | 发电机定子绕组端部动态特性试验详解
  5. 019,Intelidea右键新建选项没有Java class选项
  6. jmeter web监听结果_监听器-聚合报告监听性能测试结果
  7. Eclipse快捷键之搜索
  8. 编译型语言和解释性语言,c++和python
  9. VS Code配置java环境
  10. java ajaxsubmit_jQuery form插件之ajaxForm()和ajaxSubmit()的可选参数项对象
  11. 萨姆休斯顿州立大学计算机专业,萨姆休斯顿州立大学排名在2020年USNEWS美国最佳综合大学排名第281...
  12. EditPlus 使用技巧以及快捷键
  13. 课程设计——模仿网易云UI设计基础(超简单版)
  14. 我想起个公司名字,招投标行业的,快速搜索标讯的,科技公司,蓝色logo的
  15. 什么是微控制器? 通用组件的定义特征和架构
  16. 习题 2-2 韩信点兵 (hanxin)(C语言版)
  17. Nature Neuroscience:利用深度神经网络进行基于磁共振的眼动追踪
  18. echarts绘制四川地图
  19. Window VMware MAC OS 安装
  20. JS判断安卓端或者苹果端并下载

热门文章

  1. 计算机硕士研究生论文格式,★计算机硕士研究生论文提纲范文计算机硕士研究生论文提纲格式模板...
  2. 芯片与android关系,紫光展锐芯片平台实现与安卓11同步意味着什么
  3. 在线解压缩 压缩文件
  4. 站桩:到底怎么站?浑圆桩
  5. 计算机网络基础 — 运输层常见问题与解答
  6. YOLOv4实战尝鲜 --- 教你从零开始训练自己的数据集(安全头盔佩戴识别检测)
  7. 2022款联想yoga16s和联想小新pro16的区别 联想yoga16s和联想小新pro16哪个好
  8. chatgpt赋能python:Python中如何实现内循环到外循环
  9. 网络管理软件,为何选用LaneCat网猫?
  10. HashMap、HashTable的key和value是否可为null