Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Python-matplotlib 多类别学术散点图制作

Python-matplotlib 多类别学术散点图制作

作者头像
DataCharm
发布于 2021-02-22 07:10:48
发布于 2021-02-22 07:10:48
86302
代码可运行
举报
运行总次数:2
代码可运行

01. 引言

本期推文回归学术图表的绘制教程,本次的推文也是在查看SCI论文时发现,图表简单明了且使用较多,接下来我们通过构建虚拟数据进行符合出版的多类别散点图绘制。

02. 数据构建及可视化绘制

我们构建6组虚拟数据进行绘制,具体如下:

绘图代码具体如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#开始绘图
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from matplotlib.pyplot import MultipleLocator

plt.rcParams['font.family'] = "Times New Roman"
x = np.arange(0,len(scatter),1)
y1 = scatter.D1.values
y2 = scatter.D2.values
y3 = scatter.D3.values
y4 = scatter.D4.values
y5 = scatter.D5.values
y6 = scatter.D6.values

fig,ax = plt.subplots(figsize=(4.5,3),dpi=300)
scatter_01 = ax.plot(x,y1,marker='s',c='k',lw=.5,markerfacecolor='dimgray',markeredgecolor='dimgray',
                     label='D1')
scatter_02 = ax.plot(x,y2,marker='s',c='k',ls='--',lw=.5,markerfacecolor='white',markeredgewidth=.4,
                    markeredgecolor='k',label='D2')
scatter_03 = ax.plot(x,y3,marker='o',c='k',lw=.8,ls=':',markerfacecolor='dimgray',markeredgecolor='dimgray',
                    label='D3')
scatter_04 = ax.plot(x,y4,marker='o',c='k',lw=.5,markerfacecolor='white',markeredgewidth=.4,
                    markeredgecolor='k',label='D4')

scatter_05 = ax.plot(x,y5,marker='^',c='k',lw=.5,ls='-.',markerfacecolor='k',markeredgecolor='k',
                    label='D5')
scatter_06 = ax.plot(x,y6,marker='^',c='k',ls='--',lw=.5,markerfacecolor='white',markeredgewidth=.4,
                    markeredgecolor='k',label='D6')

#修改次刻度
yminorLocator = MultipleLocator(2.5) #将此y轴次刻度标签设置为0.1的倍数
ax.yaxis.set_minor_locator(yminorLocator)
ax.tick_params(which='major',direction='out',length=4,width=.5)
ax.tick_params(which='minor',direction='out',length=2,width=.5)
ax.set_ylim(bottom=10,top=45)
for spine in ['top','bottom','left','right']:
    ax.spines[spine].set_linewidth(.5)
ax.legend(frameon=False,ncol=3,loc='upper center',fontsize=8.5)

text_font = {'size':'13','weight':'bold','color':'black'}
ax.text(.03,.91,"(a)",transform = ax.transAxes,fontdict=text_font,zorder=4)
ax.text(.87,.04,'\nVisualization by DataCharm',transform = ax.transAxes,
        ha='center', va='center',fontsize = 4,color='black',fontweight='bold',family='Roboto Mono')
plt.savefig(r'F:\DataCharm\SCI paper plots\sci_scatter.png',width=4.5,height=3,
            dpi=900,bbox_inches='tight')
plt.show()

知识点:

(1)ax.plot()函数marker的具体设置,本期推文,我们分别设置's' 矩形,'o'圆形,'^' 上三角形。其他类型如下:

(2)ax.plot()函数linestyle(ls)连接线的类型,matplotlib提供的类别如下:

下面列举ax.plot()其他主要参数如下:

(3) 副刻度设置:ax.yaxis.set_minor_locato()

(4) 轴脊(spines)宽度设置:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
for spine in ['top','bottom','left','right']:
    ax.spines[spine].set_linewidth(.5)

其他详细内容可以参考官网

得到的图形如下:

03. 总结

本期推文回归学术图表绘制教程:多类别散点图。涉及连接线、颜色、刻度等属性参数的设置,教程相对简单,希望能够帮到大家。欢迎进群讨论啊

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-09-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 DataCharm 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Python-matplotlib 商业图表绘制03
本篇推文为python-matplotlib 商业图表绘制的第三篇文章,主要内容为圆润柱状图的绘制,这也是我之前一直想做的事情,在浏览Matplotlib官网时,发现了一个方法,就试着进行绘制,效果还不错。接下来,我们开始
DataCharm
2021/02/22
5900
Python-matplotlib 商业图表绘制03
还在对Matplotlib繁琐的图层设置感到烦恼!?快来看看这个Python绘图工具包吧
是不是被matplotlib繁琐绘图属性设置搞得一脸懵?是不是因常常记不住某一个图层设置函数而被迫看又长又枯燥的API文档?又或者是不是在面对多个matplotlib子图时写了大量的循环代码来设置属性?最后还是不是希望只精通一个Python绘图包就可以把二维、空间等类型图表绘制方法都掌握??此外,还有好多无奈和吐槽,我不知道你们是不是这样?反正以上列出的几点就是我在使用matplotlib自定义绘制图表时最大的感触了,当然,本期推文不是来吐槽的,是来为大家提供好的解决方法的。下面就介绍下今天的主角-- ProPlot。说真的!当我刚开始发现这个包时:“嗯?不错,logo和matplotlib很像”,可是,当我在熟悉大多数和经常使用matplotlib绘图时,回来再看这个工具包时:“我ri,真香!!我之前干了啥?赶快用起来!”。总之一句话,如果上期推文 因为配图,SCI多次返修!?因为你还没发现这个Python科学绘图宝藏工具包 可以让你一步设置sci发表级别的配图格式的话,那本期推文将告诉你如何使用更少的代码实现繁琐的自定义绘图需求,当然,也是符合出版需求的配图,主要内容如下:
DataCharm
2021/02/22
1.4K0
还在对Matplotlib繁琐的图层设置感到烦恼!?快来看看这个Python绘图工具包吧
Python-matplotlib 学术柱状图绘制
柱状图或条形图在学术论文中使用的频率还是很大的,图中需要以不同颜色对不同数据进行区分,但当涉及黑白打印时,色彩颜色的区别度较小,导致难以理解,因此需要绘制黑灰颜色或者黑白阴影的柱状图或者条形图,下面就具体介绍使用Python-matplotlib 的实现过程。
气象学家
2020/07/17
4.8K0
Python-matplotlib 学术柱状图绘制
Figure解析
“PDFMV框架是问题-数据-特征-模型-价值五个英文字母的首字母组合而成,它是以问题为导向,数据为驱动,利用特征和模型从数据中学习到知识,以创造价值的系统化过程。”
陆勤_数据人网
2020/04/07
9170
Figure解析
Python-matplotlib 绘图配色设计
色彩搭配对图表的第一印象至关重要,合理的设置对图表的颜值提升有着很大的帮助,本期推文结合一个具体例子对图表颜色搭配进行讲解。
DataCharm
2021/02/22
1.5K0
Python-matplotlib 绘图配色设计
Python-matplotlib 商业图表-第5弹
第一次使用 Markdown Nice 进行公众号编写(其实刚开始运营公众号时也有使用过,奈于代码编辑就放弃,不过,现在“真香”了 ),希望熟悉后定制自己属于自己的主题。本期还是继续前面的Python-matplotlib 商业图表绘制系列的第5篇教程推文,目的还是为了熟悉matplotlib的绘图语法。
DataCharm
2021/02/22
2500
Python-matplotlib 商业图表-第5弹
Python-matplotlib 学术散点图 EE 统计及绘制
之前的绘制图文Python-matplotlib 学术散点图完善Python-matplotlib 学术型散点图绘制 教程中,对学术散点图已经进行了较为完善的绘制教程,但这几天的通过准备 论文图表再现计划 以及后台小伙伴的留言,发现在绘制的相关性散点图中,各个范围的 Expected Error (EE)的统计个数没有在图表中进行展示 ,即下图中左下角的信息没有绘制。
DataCharm
2021/02/22
9670
Python-matplotlib 学术散点图 EE 统计及绘制
相关性分析你了解多少?可视化展示一下吧~~
今天小编介绍数据分析中最常用的方法之一相关性分析,该步骤多用于数据探索过程中,用于检测数据维度之间的相关密切程度。本文将通过以下内容介绍相关性分析:
DataCharm
2022/10/25
4.4K0
相关性分析你了解多少?可视化展示一下吧~~
Python-matplotlib 学术散点图完善
上期的推文Python-matplotlib 学术型散点图绘制 推出后,很多小伙伴比较喜欢
气象学家
2020/07/15
2.3K0
工具包 | 使用Python绘制Sci学术期刊配图
之前还在讨论Matplotlib没有很好的第三方主题库呢?这不,又被我发现了一个宝藏库,还专门用于一些学术期刊的图表发表,可谓是弥补了matplotlib 繁琐的自定义设置。好了,话不多说,今天这篇推文的主角就是Github 上拥有1.6k 星之多的科学论文图表绘制库「SciencePlots」。推文的主要内如下:
气象学家
2020/10/09
13K0
工具包 | 使用Python绘制Sci学术期刊配图
Python-matplotlib 横向堆积柱状图绘制
,经群里爱学习的小伙伴们提醒,居然漏了一个常用的柱状图形式。看吧····知识点还是没有系统起来(最近也在对各种图表进行系统规整哦,包括学术和商业的
DataCharm
2021/02/22
6.6K1
Python-matplotlib 横向堆积柱状图绘制
网友需求系列01-Python-matplotlib定制化刻度(主副)绘制
今天我们开始「粉丝要求绘图系列」的第一篇推文 ,这个系列我会筛选出需求较多的一类图进行绘制讲解,当然,绘图的数据我们尽可能的全部分享出来(即使涉及一些论文数据,我们也会根据情况进行虚构处理的),本期的推文重要涉及的知识点如下:
DataCharm
2021/02/22
1.7K0
网友需求系列01-Python-matplotlib定制化刻度(主副)绘制
【Python环境】matplotlib - 2D 与 3D 图的绘制
类MATLAB API 最简单的入门是从类 MATLAB API 开始,它被设计成兼容 MATLAB 绘图函数。 让我们加载它: from pylab import * 使用 qt 作为图形后端: %matplotlib qt 示例 类MATLAB API 绘图的简单例子: from numpy import * x = linspace(0, 5, 10) y = x ** 2figure() plot(x, y, 'r') xlabel('x') ylabel('y') title('title') s
陆勤_数据人网
2018/02/27
5.8K0
【Python环境】matplotlib - 2D 与 3D 图的绘制
趋势(一)利用python绘制折线图
折线图用于在连续间隔或时间跨度上显示定量数值,最常用来显示趋势和关系(与其他折线组合起来)。折线图既能直观地显示数量随时间的变化趋势,也能展示两个变量的关系。
HsuHeinrich
2024/11/23
2540
趋势(一)利用python绘制折线图
Matpotlib绘图遇到时间刻度就犯难?现在,一次性告诉你四种方法
最近有小伙伴私信我关于matplotlib时间类型刻度的设置问题,第一感觉就是官网有好多例子介绍啊
数据森麟
2020/09/24
3K0
Matpotlib绘图遇到时间刻度就犯难?现在,一次性告诉你四种方法
Python-matplotlib 商业图表仿制第7弹
虽然小伙伴们喜欢空间绘图方面的居多(毕竟这方面的小伙伴居多),但商业图表的绘制也不能放下哦!本期就推出一篇商业图表的仿制教程。主要涉及内容如下:
DataCharm
2021/02/22
3450
Python-matplotlib 商业图表仿制第7弹
Python-matplotlib 箱线图绘制
箱线图(Boxplot) 是一种用作显示一组数据分散情况资料的统计图表,本期推文就如何使用matplotlib和seaborn 绘制出高度定制化的箱线图做出详细的讲解。
DataCharm
2021/02/22
4.4K0
Python-matplotlib 箱线图绘制
matplotlib绘图基础[通俗易懂]
http://blog.csdn.net/pipisorry/article/details/37742423
全栈程序员站长
2022/09/01
6.7K0
matplotlib绘图基础[通俗易懂]
用matplotlib在同一个画布显示20个 双y轴折线图
前几天在Python白银群【巭孬嫑勥烎】问了一个Python可视化的问题,这里拿出来给大家分享下。
Python进阶者
2023/08/31
2870
用matplotlib在同一个画布显示20个 双y轴折线图
手把手教你用Matplotlib画一个小清新配色的商业图表
导读:本文使用小清新配色对散点图和折线图进行另类的绘制,绘制出让人耳目一新的商业图表可视化作品。
IT阅读排行榜
2020/09/08
1.1K0
手把手教你用Matplotlib画一个小清新配色的商业图表
推荐阅读
相关推荐
Python-matplotlib 商业图表绘制03
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验