可视化库-Matplotlib基础设置(第三天)
1.画一个基本的图
import numpy as np
import matplotlib.pyplot as plt # 最基本的一个图,"r--" 线条加颜色, 也可以使用linestyle和color来进行设置 linestyle='--', color='r'
plt.plot([1, 2, 3, 4, 5], [1, 4, 9, 16, 25], 'r--') # 画出x轴 和 y轴的坐标,fontsize 打印字体大小
plt.xlabel('xlabel', fontsize=16)
plt.ylabel('ylabel', fontsize=16)
plt.show()

2. 画多条直线
tang_numpy = np.arange(0, 10, 0.5)
plt.plot(tang_numpy, tang_numpy, linestyle='--', color='r', marker='o')
plt.show() plt.plot(tang_numpy, tang_numpy**2,'r--',
tang_numpy, tang_numpy**3, 'go',
tang_numpy, tang_numpy, 'bs',
)
plt.show()
3. linewidth指定线条的宽度,marker='o', markerfacecolor表示mark颜色,markersize # 表示标志物的大小
x = np.linspace(-10, 10)
y = np.sin(x)
plt.plot(x, y, linewidth=2.0)
plt.show()
# marker标志物的点, markerfacecolor表示mark颜色,markersize #表示标志物的大小
plt.plot(x, y, color='b', linestyle=':', marker='o', markerfacecolor='r', markersize=10)
plt.show()
4. plt.setp(line, color='r', linewidth=2.0, alpha=0.5) # plot后进行单独的属性设置
line = plt.plot(x, y)
plt.setp(line, color='r', linewidth=2.0, alpha=0.4)
plt.show()
5.plt.subplot(211) 子图 211表示的是画的图是2行一列的,最后一个1表示子图里面的第一个图
plt.subplot(211)
plt.plot(x, y, color='r')
# 212表示一会要画的图是两行一列的,最后一个1表示子图当中的第二个图
plt.subplot(212)
plt.plot(x, y, color='b')
plt.show() # 绘制一行两列
plt.subplot(121)
plt.plot(x, y, color='r')
plt.subplot(122)
plt.plot(x, y, color='b')
plt.show()
6. 绘图上加上注释 plt.text(0, 0, '唐宇迪') plt.grid(True)#表示加上网格
plt.plot(x, y, color='b', linestyle=':', marker='o', markerfacecolor='r', markersize=10)
plt.xlabel('x:--')
plt.ylabel('y:--')
plt.title('tang yu di:---')
# text加注释,(0,0)表示位置, '唐宇迪'表示内容
plt.text(0, 0, 'tangyudi')
plt.grid(True)
plt.show()

7. # 在文本区域加上一个箭头标志
plt.annotate('tangyudi', xy=(-5, 0), xytext=(-2, 0.3), arrowprops=dict(facecolor='black', shrink=0.05, headwidth=20, headlength=20)) # annotate 表示加文本标注, xy表示文本的位置,xytext表示箭头相对于文本的位置 arrowprops 表示箭头, 输入的是字典, facecolor表示箭头颜色, shrink=0.05表示箭头的收缩程度, headwidth表示箭头的宽,headlength表示箭头的长度

8. 设置x轴的坐标不可见,包括刻度和数字
x = range(10)
y = range(10)
fig = plt.gca()
plt.plot(x, y)
# 设置x轴的刻度不可见
fig.axes.get_xaxis().set_visible(False) plt.show()
9.画hist直方图, ax.spines['top'].set_visible(False)去除顶部和右边的框,plt.tick_param(bottom='off'),同时去除x轴底部刻度
import math
x = np.random.normal(loc=0.0, scale=1.0, size=300)
width = 0.5
# 设定bins的范围
bins = np.arange(math.floor(x.min())-1, math.ceil(x.max())+1, width)
ax = plt.subplot(111)
# 设定图的方框不可见
ax.spines['top'].set_visible(False)
ax.spines['right'].set_visible(False)
# 去除各个方向上的刻度值
plt.tick_params(bottom='off', left='off', right='off', top='off')
# 画直方图x表示数值,bins表示直方图
plt.hist(x, bins=bins)
plt.show()
10.设置x轴的标签 ax.set_xticklabels(label, rotation=45,horizontalalignment='left') rotation 表示旋转的角度,horizontalalignment='left'表示对齐的方式)
x = range(10)
y = range(10) labels = ['tangyudi' for x in range(10)]
fig, ax = plt.subplots()
plt.plot(x, y)
# plt.xticks刻度设置范围
plt.xticks(range(10))
# 设置xtick文本标签的旋转方向和对齐方式
ax.set_xticklabels(labels, rotation=45, horizontalalignment='right')
plt.show()

11. 进行图形的注释 plt.legend()
# 1 将标注放在图里面
x = np.arange(10)
for i in range(1, 4):
plt.plot(x, i*x**2, label='Group %d'%i)
# loc 表示放的位置,best表示最好的位置
plt.legend(loc='best')
plt.show() # 2 将标注放在外面
figure = plt.figure()
ax = plt.subplot(111)
x = np.arange(10)
for i in range(1, 4):
plt.plot(x, i*x**2, label='Group %d'%i)
# bbox_to_anchor表示放的位置
ax.legend(loc='upper center', bbox_to_anchor=(0.5, 1.15), ncol=3)
plt.show() # 3 将标注放在右侧, ncol = 1表示放在一列里面
figure = plt.figure()
ax = plt.subplot(111)
x = np.arange(10)
for i in range(1, 4):
plt.plot(x, i*x**2, label='Group %d'%i) ax.legend(loc='upper center', bbox_to_anchor=(1.2, 1), ncol=1)
plt.show()
第二个程序的图

12 plt.legend(loc='best', framealpha=0.05) # 对图例进行透明化设置
x = np.arange(10)
for i in range(4):
plt.plot(x, i*x**2, label=('Group %d'%i), marker="o") plt.legend(loc='best', framealpha=0.05)
plt.title('tangyudi')
plt.show()
13. mpl.rcparams['axes.titlesize'] # 设置标题的大小, 可用于放大标题
import matplotlib as mpl
# 设置标题大小为20
mpl.rcParams['axes.titlesize'] = ''
x = np.arange(20)
for i in range(1, 4):
plt.plot(x, i*x**2, label=('Group %d'%i)) plt.legend()
plt.title('tangyudi')
plt.show()
14.风格的设置,使用plt.style.use()
# 14 风格设置
# 1 进行混合风格的设置,风格表示的是背景
import numpy as np
import matplotlib.pyplot as plt # 输出可以使用的风格
print(plt.style.available) x = np.linspace(-10, 10)
y = np.sin(x)
# 以列表的形式进行混合使用
plt.style.use(['ggplot', 'bmh'])
plt.plot(x, y)
plt.show() # 2 歪歪扭扭的风格
plt.xkcd()
plt.plot(x, y)
plt.show()
可视化库-Matplotlib基础设置(第三天)的更多相关文章
- Python可视化库-Matplotlib使用总结
在做完数据分析后,有时候需要将分析结果一目了然地展示出来,此时便离不开Python可视化工具,Matplotlib是Python中的一个2D绘图工具,是另外一个绘图工具seaborn的基础包 先总结下 ...
- Python数据可视化库-Matplotlib(一)
今天我们来学习一下python的数据可视化库,Matplotlib,是一个Python的2D绘图库 通过这个库,开发者可以仅需要几行代码,便可以生成绘图,直方图,功率图,条形图,错误图,散点图等等 废 ...
- Python可视化库Matplotlib的使用
一.导入数据 import pandas as pd unrate = pd.read_csv('unrate.csv') unrate['DATE'] = pd.to_datetime(unrate ...
- python的数据可视化库 matplotlib 和 pyecharts
Matplotlib大家都很熟悉 不谈. ---------------------------------------------------------------------------- ...
- 数据分析处理库pandas及可视化库Matplotlib
一.读取文件 1)读取文件内容 import pandas info = pandas.read_csv('1.csv',encoding='gbk') # 获取文件信息 print(info) pr ...
- Python数据可视化库-Matplotlib(二)
我们接着上次的继续讲解,先讲一个概念,叫子图的概念. 我们先看一下这段代码 import matplotlib.pyplot as plt fig = plt.figure() ax1 = fig.a ...
- python可视化库 Matplotlib 01 figure的详细用法
1.上一章绘制一幅最简单的图像,这一章介绍figure的详细用法,figure用于生成图像窗口的方法,并可以设置一些参数 2.先看此次生成的图像: 3.代码(代码中有详细的注释) # -*- enco ...
- python可视化库 Matplotlib 00 画制简单图像
1.下载方式:直接下载Andaconda,简单快捷,减少准备环境的时间 2.图像 3.代码:可直接运行(有详细注释) # -*- encoding:utf-8 -*- # Copyright (c) ...
- Pycon 2017: Python可视化库大全
本文首发于微信公众号“Python数据之道” 前言 本文主要摘录自 pycon 2017大会的一个演讲,同时结合自己的一些理解. pycon 2017的相关演讲主题是“The Python Visua ...
随机推荐
- linux系统时间获取方式
Linux 操作系统计算系统时间:主要函数:time localtime gmtime asctime ctime mktime difftime s ...
- Spring的注解@Qualifier(二十五)
转载:https://www.cnblogs.com/smileLuckBoy/p/5801678.html 近期在捯饬spring的注解,现将遇到的问题记录下来,以供遇到同样问题的童鞋解决~ 先说明 ...
- 9.2 Zynq嵌入式系统调试方法
陆佳华书<嵌入式系统软硬件协同设计实战指南 第2版>这本书中的实例着实浪费了我不少时间.从本书第一个实例我就碰了一鼻子灰.当然显然是自己时新手的原因.首先第一个实验其实真的特别简单,为什么 ...
- java垃圾回收期如何工作(编程思想)
垃圾回收器如何工作: 在以前的程序语言中,在堆上分配对象的代价十分昂贵,因此读者会自然觉得对Java中所有对象(基本类型除外)都在堆上分配的方式也非常高昂.然而,垃圾回收期对提高对象的创建速度,却具有 ...
- JMeter VS LoadRunner
对比项 JMeter LoadRunner 安装 简单,下载解压即可 复杂,安装包大于1GB,安装时间较久 录制/回放模式 支持 支持 测试协议 偏少,但用户可自行拓展 较多,用户不可自行拓展 分布式 ...
- 使用c++实现一个FTP客户端(一)
之前使用c++实现了一个FTP客户端,在这里做一些记录. 一.需要注意的几点 ①FTP是一种文件传输协议,基于TCP,所以客户端与服务器建立的连接是可靠.安全的,并且要经过三次握手的过程. ②FTP传 ...
- iOS-----使用AddressBook添加联系人
使用AddressBook添加联系人 添加联系人的步骤如下: 1 创建ABAddressBookRef,这就得到了对地址簿的引用. 2 调用ABPersonCreate()函数创建一个空的ABReco ...
- vue项目之webpack打包静态资源路径不准确
摘自:https://blog.csdn.net/viewyu12345/article/details/83187815 问题 将打包好的项目部署到服务器,发现报错说图片找不到. 静态资源如js访问 ...
- C# 4.0中的动态类型和动态编程
# 4.0的主题就是动态编程(Dynamic Programming).虽然C#仍然是一种静态语言,但是对象的意义开始变得越来越“动态”.它们的结构和行为无法通过静态类型来捕获,或者至少编译器在编译程 ...
- chaos-engineering 的一些开源工具
Chaos Monkey - A resiliency tool that helps applications tolerate random instance failures. The Simi ...