matplotlib画图之线条控制
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画图之线条控制相关推荐
- matplotlib画图、如何提高图像分辨率?
matplotlib画图.如何提高图像分辨率? Figure size (figsize) determines the size of the figure in inches. This give ...
- 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 ...
- python matplotlib画图的几个实例--latex,坐标系等
文章目录 实例1 学会使用tex/latex 实例2 学会画坐标轴 2.1过程 2.2 典型例子 2.2.1 一条带箭头的竖线 2.2.2 坐标系 2.2.3 坐标系上画三角函数 实例1 学会使用te ...
- python画图中文显示_解决Linux系统中python matplotlib画图的中文显示问题
最近想学习一些python数据分析的内容,就弄了个爬虫爬取了一些数据,并打算用Anaconda一套的工具(pandas, numpy, scipy, matplotlib, jupyter)等进行一些 ...
- Matplotlib画图常用方法总结(全)
Matplotlib画图指南 常见的python的matplotlib 的画图的方法,画散点图,曲线图,子图,以及子图的布局,间距等. 1:首先导入包,因为画图常用的数据类型我们需要导入包numpy ...
- python matplotlib画图产生的Type 3 fonts字体没有嵌入问题
ScholarOne's 对python matplotlib画图产生的Type 3 fonts字体不兼容,更改措施: 在程序中添加如下语句 import matplotlib matplotlib. ...
- python自定义colorbar_python可视化 matplotlib画图使用colorbar工具自定义颜色
python matplotlib画图使用colorbar工具自定义颜色 colorbar(draw colorbar without any mapple/plot) 自定义colorbar可以画出 ...
- 使用matplotlib画图时不能同时打开太多张图
使用matplotlib画图时有时会收到来自matplotlib的runtime warming的警告,原因可能是同时打开太多张图,最常见的情况是在一个循环中画图,每次循环都新建一个图,但是未关闭新建 ...
- Matplotlib画图教程:在QT界面中嵌入三维图片
Matplotlib画图教程:在QT界面中嵌入三维图片 需求: 做项目报告的时候,有这么一个想法,就是能通过UI随时调用matplotlib进行二维图和三维图的绘制.因此就诞生了做这么一个小模块的想法 ...
最新文章
- 前百度主任架构师创业,两年融资千万美元,他说AI新药研发将迎来黄金十年...
- 大牛书单 | 人工智能方向好书分享(第二期)
- 9型转x型 cobol_多重排斥、价值嬗变与农村跨省婚姻研究——以东莞宗族型X村为例...
- Exchange日常管理之四:简化OWA的登录
- 校园网双出口配置实例
- ubuntu 环境变量配置
- php网站视频播放外链,视频直接上传到七牛上,在浏览器中输入外链为什么不能直接播放?...
- zookeeper之watcher
- 弟子规python编程游戏_弟子规入则孝_读后感
- 计算机卸载应用程序的步骤,Win10系统下卸载应用程序的步骤
- JeeCms使用笔记
- 代码格式规范化, 代码风格统一
- FFmpeg命令(四)、 图片转视频
- 应用安装失败“The application could not be installed: INSTALL_FAILED_USER_RESTRICTED”问题解决
- poi导出带有下拉选项的Excel,解决下拉选项过多报错的问题
- Postgresql学习笔记-高级语法篇
- 怎样用ocr软件识别图片中的文字
- Mac休眠之后唤醒时无法使用鼠标
- 如何通俗地解释梯度下降法
- 离散数学 第二章命题逻辑