导师要求参照别人论文中的图(下图),将其论文中的图画美观些

附上自己整合验证过的代码:

功能:将散点连接并平滑

1)Matlab

效果图:

x1=[431.50032,759.5552,1335.3736,2530.388] %输入以下三组数据

y1=[34.06366,35.73132,37.2244,38.61294]

x2=[263.8656,458.7952,839.6584,1740.9088]

y2=[33.5318074,35.1415668,36.8603528,38.244926]

x3=[253.91296,441.854,803.4116,1625.2548]

y3=[34.3625,35.88912,37.5403,38.45364]

a=linspace(min(x1),max(x1)); %插值后将散点连线平滑化

b=interp1(x1,y1,a,'cubic');

c=linspace(min(x2),max(x2));

d=interp1(x2,y2,c,'cubic');

e=linspace(min(x3),max(x3));

f=interp1(x3,y3,e,'cubic');

plot(a,b, 'LineWidth',2, 'LineSmoothing', 'on'); %画ab对应曲线,粗细,平滑

hold on

plot(c,d, 'LineWidth',2, 'LineSmoothing', 'on'); %画cd对应曲线,粗细,平滑

hold on

plot(e,f, 'LineWidth',2, 'LineSmoothing', 'on'); %画ef对应曲线,粗细,平滑

axis([0,3000,33,39]) %确定x轴与y轴框图大小

legend({'MRMV','MVDM','MVLL'},'FontSize',13,'Location','southeast','Orientation','vertical') %题注设置:名称,字号,位置,方向

xlabel('Bit rates(kbps)','FontSize',13,'FontWeight','bold') %x轴设置:标题,字号,字体粗细

ylabel('PSNR(dB)','FontSize',13,'FontWeight','bold') %y轴设置:名称,字号,字体粗细

title('Balloons','FontSize',15,'FontWeight','bold') %标题描述,名称,字号,字体粗细

set(gca,'ygrid','on','gridlinestyle','--','Gridalpha',0.3) %网格设置

grid on; %网格

print(gcf, '-dpng', '-r800', 'C:\Users\Administrator\Desktop\test.png') %保存图片,格式为png,分辨率800,保存路径

2)Python

小问题:翘尾问题需要解决

# author: Kobay time:2019/10/18

import matplotlib.pyplot as plt

import numpy as np

from scipy.interpolate import spline

x1 = np.array([431.50032,759.5552,1335.3736,2530.388])

y1 = np.array([34.06366,35.73132,37.2244,38.61294])

x2 = np.array([263.8656,458.7952,839.6584,1740.9088])

y2 = np.array([33.5318074,35.1415668,36.8603528,38.244926])

x3 = np.array([253.91296,441.854,803.4116,1625.2548])

y3 = np.array([34.3625,35.88912,37.5403,38.45364])

x1_new = np.linspace(x1.min(), x1.max()) # 300 represents number of points to make between T.min and T.max

y1_smooth = spline(x1, y1, x1_new)

x2_new = np.linspace(x2.min(), x2.max(), 3000) # 300 represents number of points to make between T.min and T.max

y2_smooth = spline(x2, y2, x2_new)

x3_new = np.linspace(x3.min(), x3.max(), 3000) # 300 represents number of points to make between T.min and T.max

y3_smooth = spline(x3, y3, x3_new)

# 散点图

plt.scatter(x1, y1, c='black', alpha=0.5) # alpha:透明度) c:颜色

# 折线图

plt.plot(x1, y1, linewidth=1) # 线宽linewidth=1matl

# 平滑后的折线图

plt.plot(x1_new, y1_smooth, c='blue',label='MRMV')

plt.plot(x2_new, y2_smooth, c='orange',label='MVDM')

plt.plot(x3_new, y3_smooth, c='gray',label='MVLL')

# 解决中文显示问题

# plt.rcParams['font.sans-serif'] = ['SimHei'] # SimHei黑体

# plt.rcParams['axes.unicode_minus'] = False

plt.title("Balloons", fontdict={'family' : 'Calibri', 'size': 16,'weight':'bold'}) # 标题及字号

plt.xlabel("Bit rates(kbps)", fontdict={'family' : 'Calibri', 'size': 14,'weight':'bold'}) # X轴标题及字号

plt.ylabel("PSNR(dB)", fontdict={'family' : 'Calibri', 'size': 14,'weight':'bold'}) # Y轴标题及字号

plt.tick_params(axis='both', labelsize=14) # 刻度大小

plt.axis([0, 3000, 33, 39])#设置坐标轴的取值范围

plt.grid(linestyle='-.')

plt.legend(loc=4)

plt.show()

# plt.save('squares_plot.png'(文件名), bbox_inches='tight'(将图表多余的空白部分剪掉))

# 用它替换plt.show实现自动保存图表

标签:plt,min,Python,np,散点,Matlab,x2,x3,x1

来源: https://www.cnblogs.com/Kobaayyy/p/11788002.html

matlab散点光滑连线,科研画图:散点连接并平滑(基于Matlab和Python)相关推荐

  1. matlab画两电荷斥力与距离的图,电磁场大作业一基于MATLAB描绘双静电荷电场线与等势线分布...

    电磁场大作业一基于MATLAB描绘双静电荷电场线与等势线分布 电磁场与电磁波大作业 学 院 班 级 姓 名 学 号 真空中任意两点电荷电场线与等势线分布研究 一.研究内容 (1) 研究思路 静电场是指 ...

  2. 基于matlab异步电机 s函数,建立电机状态方程的S 函数和仿真模)基于MATLAB的无刷双馈电机建模与仿真...

    MATLAB的无刷双馈电机 建模与仿真 第29卷 第6期 2002年12月湖 南 大 学 学 报 (自然科学版)JournalofHunanUniversity(NaturalSciencesEdit ...

  3. matlab里调节触发角度,华电电气-高压直流输电-结课作业-基于MATLAB的HVDC仿真

    基于MATLAB的HVDC仿真 一. 引言 高压直流输电(HVDC)近年来在世界各地迅速发展,在我国也因"西电东送.南北互供.全国联网"而成为电力建设的热点.目前除葛上.天广两个5 ...

  4. matlab怎么画二维热力图_1.1交通热力图(2)——基于matlab绘制

    地理密度图是matlab2018以后才有的工具,对于更早版本,这里提出一种自编程的绘制方法. A.没有地图衬托的热力图 已知的数据格式为坐标经纬度,数据量大概在200万行.图1:经纬度坐标,向量名gp ...

  5. matlab怎么编写数据处理程序,【悬赏--已结束】求编写一个基于Matlab的数据处理程序...

    方案征集活动已经结束,不再接受新的方案投稿.共征集到3个方案,基础方案,LabView方案.以及Matlab GUI方案.详见2楼. 求Matlab编程实现以下功能:基本要求 1.读取8192个字节的 ...

  6. MATLAB脉搏波平滑,基于MATLAB的脉搏波信号的实时处理

    软件天地 <微计算机信息>(测控自动化)2009年第25卷第10-1期 文章编号:1008-0570(2009)10-1-0184-02 基于 M ATLAB的脉搏波信号的实时处理 The ...

  7. 基于matlab地球物理,基于MATLAB的《地球物理资料处理和解释》教学研究

    吴萍萍 贾建鹏 郭越 马欢 摘要:<地球物理资料处理和解释>课程是地球物理学专业的重要课程之一,其目的在于通过该课程的学习学生能对"地球物理学理论→资料整理→成果解释" ...

  8. 【基于MATLAB的数字图像处理】第四章·图像增强

    系列文章 ·[基于MATLAB的数字图像处理]第一章·绪论 ·[基于MATLAB的数字图像处理]第二章·视觉系统与图像处理系统 ·[基于MATLAB的数字图像处理]第三章·基本图像变换 ·[基于MAT ...

  9. 用matlab画旋转抛物面_基于MATLAB的旋转抛物面天线的几种特性的仿真

    [实例简介] 这是一篇关于基于MATLAB的旋转抛物面天线的几种特性的仿真的论文,对旋转抛物面天线的方向图.利用系数.口径截获效率和增益因子及馈源方向函数等特性进行了仿真 第5期 顾洪军,等:基于 M ...

最新文章

  1. VC++ COM、ATL开发入门示例
  2. SQL搜索转为XML搜索
  3. 大数据的应用-UserCF和ItemCF推荐算法
  4. Python编程从入门到实践~JSON
  5. Mybatis源码之插件模块分析
  6. oracle 时间按季度,ORACLE时间字段取年、月、日、季度
  7. 西门子万人裁员背后的思考 :有车有房的中年人最好使唤
  8. 2021-05-07PLC的伺服电机与控制器
  9. 好用的项目工时管理系统有哪些
  10. 十大排序算法之二路归并排序(难点为对于递归的理解)
  11. MATLAB 批量下载网页中的数据
  12. 自适应页界面HTML源码
  13. Android8.0适配问题java.lang.IllegalStateException: Only fullscreen opaque activities can request orie…
  14. [UESTC878]温泉旅店
  15. 计算机没有显示远程桌面连接,连接远程桌面时出现:“这台计算机没有远程桌面客户端访问许可”,怎么处理?...
  16. 微信小程序--实现按钮跳转另一个页面
  17. 最近发现一个不错的网站,可以用它来赚钱
  18. 打篮球的妙处——让男人更帅,更有魅力
  19. Reference定义(PhantomReference,Cleaner)
  20. 统计相关总结(AWK等)

热门文章

  1. R: ggplot2(1)
  2. Python基础入门一(2)
  3. 高性能计算的线程模型:Pthreads 还是 OpenMP
  4. 二十万字C/C++、嵌入式软开面试题全集宝典八
  5. [云炬创业学笔记]第二章决定成为创业者测试18
  6. 2020中级财管(押题班)
  7. 科大星云诗社动态20210402
  8. 科大星云诗社动态20210414
  9. WIn10+Anaconda 环境下安装 PyTorch 避坑指南
  10. hex editor怎么搜索代码_代码审计从入门到放弃(三) phplimit