matplotlib画图之线条控制

今天由于论文数据分析需要,研究使用了matplotlib画图,现在详细记录一下期间遇到的问题以及解决方法。使用matplotlib画图时,需要区分不同的数据类型,首先想到的是使用不同颜色的线条进行区分。下面是不同颜色类型,效果如下图:

color类型

‘aliceblue’: ‘#F0F8FF’,
‘antiquewhite’: ‘#FAEBD7’,
‘aqua’: ‘#00FFFF’,
‘aquamarine’: ‘#7FFFD4’,
‘azure’: ‘#F0FFFF’,
‘beige’: ‘#F5F5DC’,
‘bisque’: ‘#FFE4C4’,
‘black’: ‘#000000’,
‘blanchedalmond’: ‘#FFEBCD’,
‘blue’: ‘#0000FF’,
‘blueviolet’: ‘#8A2BE2’,
‘brown’: ‘#A52A2A’,
‘burlywood’: ‘#DEB887’,
‘cadetblue’: ‘#5F9EA0’,
‘chartreuse’: ‘#7FFF00’,
‘chocolate’: ‘#D2691E’,
‘coral’: ‘#FF7F50’,
‘cornflowerblue’: ‘#6495ED’,
‘cornsilk’: ‘#FFF8DC’,
‘crimson’: ‘#DC143C’,

linestyle类型

‘-’ solid line style
‘–’ dashed line style
‘-.’ dash-dot line style
‘:’ dotted line style

单纯的用颜色来区分效果不是很明显,于是想到在线段上做标记来区分,经过搜索使用marker类型来做标记。

marker类型

‘.’ point marker
‘,’ pixel marker
‘o’ circle marker
‘v’ triangle_down marker
‘^’ triangle_up marker
‘<’ triangle_left marker
‘>’ triangle_right marker
‘1’ tri_down marker
‘2’ tri_up marker
‘3’ tri_left marker
‘4’ tri_right marker
‘s’ square marker
‘p’ pentagon marker
‘*’ star marker
‘h’ hexagon1 marker
‘H’ hexagon2 marker
‘+’ plus marker
‘x’ x marker
‘D’ diamond marker
‘d’ thin_diamond marker
‘|’ vline marker
‘_’ hline marker

结果由于数据量过大,导致marker点过于密集,于是又在网上找了半天,终于找到使用markevery变量来稀疏标记点的密集程度,最后效果图如下:

最后效果还行,虽然看上去很简单,但是也是费了一些功夫的。最后贴个画CDF图核心代码,从读取csv文件到数据处理以及绘图过程。

cdf图核心代码部分

csvx_list = glob.glob('*.csv') #打开文件夹下全部的CSV文件
print('总共发现%s个CSV文件'% len(csvx_list))
for i in range(len(csvx_list)): #i既是正在处理的文件名csvfile = csv.reader(open(csvx_list[i], encoding='utf-8',errors='ignore'))a = []for s in csvfile:if csvfile.line_num == 1:continuea.append(float(s[0]))fs_xk = np.sort(a)val, cnt = np.unique(a, return_counts=True)ave = np.mean(a)# print(val,cnt)pmf1 = cnt / len(a)fs_rv_dist2 = stats.rv_discrete(name='fs_rv_dist2', values=(val, pmf1))plt.axis([0, np.exp(3), 0, 1])plt.plot(np.exp(val), fs_rv_dist2.cdf(val), color=colors[i], marker = markers[i],markevery=50,label=labels[i]+" average delay="+str('%.3f'%ave)+" ms",lw=1, alpha=0.5)

matplotlib画图之线条控制相关推荐

  1. matplotlib画图、如何提高图像分辨率?

    matplotlib画图.如何提高图像分辨率? Figure size (figsize) determines the size of the figure in inches. This give ...

  2. Python-anaconda-Spyder使用matplotlib画图无法显示报错解决:Figures now render in the Plots pane by default. To mak

    晚上在用anaconda的Spyder IDE,用 matplotlib 画图时不会显示图片在iPython终端中,报错如下: Figures now render in the Plots pane ...

  3. python matplotlib画图的几个实例--latex,坐标系等

    文章目录 实例1 学会使用tex/latex 实例2 学会画坐标轴 2.1过程 2.2 典型例子 2.2.1 一条带箭头的竖线 2.2.2 坐标系 2.2.3 坐标系上画三角函数 实例1 学会使用te ...

  4. python画图中文显示_解决Linux系统中python matplotlib画图的中文显示问题

    最近想学习一些python数据分析的内容,就弄了个爬虫爬取了一些数据,并打算用Anaconda一套的工具(pandas, numpy, scipy, matplotlib, jupyter)等进行一些 ...

  5. Matplotlib画图常用方法总结(全)

    Matplotlib画图指南 常见的python的matplotlib 的画图的方法,画散点图,曲线图,子图,以及子图的布局,间距等. 1:首先导入包,因为画图常用的数据类型我们需要导入包numpy ...

  6. python matplotlib画图产生的Type 3 fonts字体没有嵌入问题

    ScholarOne's 对python matplotlib画图产生的Type 3 fonts字体不兼容,更改措施: 在程序中添加如下语句 import matplotlib matplotlib. ...

  7. python自定义colorbar_python可视化 matplotlib画图使用colorbar工具自定义颜色

    python matplotlib画图使用colorbar工具自定义颜色 colorbar(draw colorbar without any mapple/plot) 自定义colorbar可以画出 ...

  8. 使用matplotlib画图时不能同时打开太多张图

    使用matplotlib画图时有时会收到来自matplotlib的runtime warming的警告,原因可能是同时打开太多张图,最常见的情况是在一个循环中画图,每次循环都新建一个图,但是未关闭新建 ...

  9. Matplotlib画图教程:在QT界面中嵌入三维图片

    Matplotlib画图教程:在QT界面中嵌入三维图片 需求: 做项目报告的时候,有这么一个想法,就是能通过UI随时调用matplotlib进行二维图和三维图的绘制.因此就诞生了做这么一个小模块的想法 ...

最新文章

  1. 前百度主任架构师创业,两年融资千万美元,他说AI新药研发将迎来黄金十年...
  2. 大牛书单 | 人工智能方向好书分享(第二期)
  3. 9型转x型 cobol_多重排斥、价值嬗变与农村跨省婚姻研究——以东莞宗族型X村为例...
  4. Exchange日常管理之四:简化OWA的登录
  5. 校园网双出口配置实例
  6. ubuntu 环境变量配置
  7. php网站视频播放外链,视频直接上传到七牛上,在浏览器中输入外链为什么不能直接播放?...
  8. zookeeper之watcher
  9. 弟子规python编程游戏_弟子规入则孝_读后感
  10. 计算机卸载应用程序的步骤,Win10系统下卸载应用程序的步骤
  11. JeeCms使用笔记
  12. 代码格式规范化, 代码风格统一
  13. FFmpeg命令(四)、 图片转视频
  14. 应用安装失败“The application could not be installed: INSTALL_FAILED_USER_RESTRICTED”问题解决
  15. poi导出带有下拉选项的Excel,解决下拉选项过多报错的问题
  16. Postgresql学习笔记-高级语法篇
  17. 怎样用ocr软件识别图片中的文字
  18. Mac休眠之后唤醒时无法使用鼠标
  19. 如何通俗地解释梯度下降法
  20. 离散数学 第二章命题逻辑

热门文章

  1. 解密美妆KOL:诞生、光鲜、推手与辛酸
  2. 一图看懂MVCC机制,RC级别解决脏读问题,RR级别怎么解决不可重复读问题【MySQL系列】
  3. 用C#SDK实现百度云OCR的文字识别
  4. 百度文字识别接口申请教程
  5. OpenCT—北师大教育学博士罗海风构建大型网络测评社区
  6. 【网络安全】CIS 2021网络安全创新大会《代码安全体系建设》实录
  7. 三四月份面试阿里菜鸟+腾讯IEG,在这边有一些心得分享给大家(Java岗)
  8. 借matlab仿真说明栅栏效应
  9. 梯度下降法(GD,SGD)总结
  10. 深度学习推荐系统之“输入”特征工程