matplotlib绘制折线图的基本配置(万能模板案例)

前面我们已经构造了一种图形可视化的模板了,下面我们直接使用这个模板进行增添和修改,进一步的改善图形的外观。

import matplotlib.pyplot as plt

# 画布
plt.figure(figsize=(9,3),   # (宽度 , 高度) 单位inch
           dpi=100,         #  清晰度 dot-per-inch
           facecolor='#CCCCCC', # 画布底色
           edgecolor='black',linewidth=0.2,frameon=True, # 画布边框
           #frameon=False  # 不要画布边框
          )         

# ax = plt.gca()
# ax.plot()

plt.plot()
plt.show()

设置好基本的图形之后,我们就可以向上面添加一些数据了

(图例放置位置)

"""legend( handles=(line1, line2, line3),
           labels=('label1', 'label2', 'label3'),
           'upper right')
    The *loc* location codes are::
          'best' : 0,          (currently not supported for figure legends)
          'upper right'  : 1,
          'upper left'   : 2,
          'lower left'   : 3,
          'lower right'  : 4,
          'right'        : 5,
          'center left'  : 6,
          'center right' : 7,
          'lower center' : 8,
          'upper center' : 9,
          'center'       : 10,"""

折线图案例

import matplotlib.pyplot as plt
import numpy as np
import pandas as pd

# 画布
plt.figure(figsize=(15,5),   # (宽度 , 高度) 单位inch
           dpi=100,         #  清晰度 dot-per-inch
           facecolor='#CCCCCC', # 画布底色
           edgecolor='black',linewidth=0.2,frameon=True, # 画布边框
           #frameon=False  # 不要画布边框
          )         

# 数据
x = np.linspace(0, 2 * np.pi, 50)
y1 = np.sin(x)
y2 = np.cos(x)
df = pd.DataFrame([x,y1,y2]).T
df.columns = ['x','sin(x)','cos(x)']

# 图形
plt.plot(df['x'],df['sin(x)'],label='sin(x)')
plt.plot(df['x'],df['cos(x)'],label='cos(x)')

# 图例
plt.legend(loc='lower right')  # 不带参数的时候,使用图形的label属性
# plt.legend(labels=['sin','cos'])

# 标题
#plt.title("sin(x) and cos(x)",loc='center',y=0.85)

# 字体字典
font_dict = {'fontsize': 12, 'fontweight': 'bold', 'color': 'green'}
plt.title("sin(x) and cos(x)",loc='center',y=0.9, fontdict=font_dict)

查看全局参数

# matplotlib.pyplot的全局参数
plt.rcParams
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd

# 设置中文字体
plt.rcParams['axes.unicode_minus'] = False    # 不使用中文减号
plt.rcParams['font.sans-serif'] = 'FangSong'  # 设置字体为仿宋(FangSong)
# 画布
plt.figure(figsize=(15,5),   # (宽度 , 高度) 单位inch
           dpi=120,         #  清晰度 dot-per-inch
           facecolor='#CCCCCC', # 画布底色
           edgecolor='black',linewidth=0.2,frameon=True, # 画布边框
           #frameon=False  # 不要画布边框
          )         

# 数据
x = np.linspace(0, 2 * np.pi, 50)
y1 = np.sin(x)
y2 = np.cos(x)
df = pd.DataFrame([x,y1,y2]).T
df.columns = ['x','sin(x)','cos(x)']

# 图形
plt.plot(df['x'],df['sin(x)'],label='sin(x)')
plt.plot(df['x'],df['cos(x)'],label='cos(x)')

# 图例
plt.legend()

# 标题
#plt.title("sin(x) and cos(x)",loc='center',y=0.85)

# 字体字典
font_dict = {'fontsize': 10, 'fontweight': 'bold', 'color': 'grey'}

# 中文标题, 默认的字体不支持中文
plt.title("三角函数:正弦和余弦",loc='center',y=0.9, fontdict=font_dict)

改变字体

# 字体字典
font_dict = {'fontsize': 10, 'fontweight': 'bold', 'color': 'grey'}

# 中文标题, 默认的字体不支持中文
plt.title("三角函数:正弦和余弦",loc='center',y=0.9, fontdict=font_dict)

添加X轴和Y轴

import matplotlib.pyplot as plt
import numpy as np
import pandas as pd

# 画布
plt.figure(figsize=(15,5),   # (宽度 , 高度) 单位inch
           dpi=120,         #  清晰度 dot-per-inch
           facecolor='#CCCCCC', # 画布底色
           edgecolor='black',linewidth=0.2,frameon=True, # 画布边框
           #frameon=False  # 不要画布边框
          )         

# 数据
x = np.linspace(0, 2 * np.pi, 50)  #
y1 = np.sin(x)
y2 = np.cos(x)
df = pd.DataFrame([x,y1,y2]).T
df.columns = ['x','sin(x)','cos(x)']

# 标题
#plt.title("sin(x) and cos(x)",loc='center',y=0.85)

# 字体字典
font_dict = {'fontsize': 10, 'fontweight': 'bold', 'color': 'black','fontfamily':'KaiTi'}

# 设置全局中文字体
plt.rcParams['font.sans-serif'] = 'KaiTi' # 设置全局字体为中文 楷体
plt.rcParams['axes.unicode_minus'] = False # 不使用中文减号

# 常用中文字体
# 宋体 SimSun
# 黑体 SimHei
# 微软雅黑 Microsoft YaHei
# 微软正黑体 Microsoft JhengHei
# 新宋体 NSimSun
# 新细明体 PMingLiU
# 细明体 MingLiU
# 标楷体 DFKai-SB
# 仿宋 FangSong
# 楷体 KaiTi

# 中文标题, 默认的字体不支持中文
plt.title("三角函数:正弦和余弦",loc='center',y=1, fontdict=font_dict)

# Axes 坐标系设置
ax = plt.gca()  # 获取当前坐标系
ax.set_facecolor('#FEFEFE')  # 设置坐标系参数。。。。
#plt.xlabel()  =>  ax.set_xlabel()
# ax.set_facecolor('#EE2211')
# ax.set_alpha(0.15)
# plt.title() => ax.set_title("AX TITLE")  

# X轴标签
plt.xlabel("X轴")  # loc: 左中右 left-center-right
# Y轴标签
plt.ylabel("Y轴")   # loc: 上中下 top-center-bottom

# X轴范围
plt.xlim(0,np.pi)  # 只显示X在0-Pi之间的部分
# Y轴范围
plt.ylim([0,1.1])  # 只显示Y在0-1之间的部分

# X轴刻度
xticks = np.array([0,1/4,2/4,3/4,1]) * np.pi      # X 轴上刻度的值
labels = ["0",'1/4 Π','1/2 Π','3/4 Π', 'Π']  # X 轴上刻度标签
plt.xticks(xticks, labels)   # 如果没有传入labels,直接使用ticks作为labels
# Y轴刻度
yticks = np.arange(0.0,1.2,0.2)     # X 轴上刻度的值
plt.yticks(yticks)   # 如果没有传入labels,直接使用ticks作为labels

# 根据刻度画网格线
#plt.grid()
plt.grid(axis='x')  # axis: both, x, y 在哪个轴上画格子

# 图形
plt.plot(df['x'],df['sin(x)'],label='sin(x)')
plt.plot(df['x'],df['cos(x)'],label='cos(x)')

# 图例
plt.legend()
# plt.legend(labels=['sin','cos'])

折线图绘制万能模板

# 处理数据
df = pd.read_csv(r'unemployment-rate-1948-2010.csv',usecols=['Year','Period','Value'])
df.replace('^M','-',regex=True, inplace=True)
df['year_month'] = df['Year'].astype('U') + df['Period']

# 设置画布和参数
plt.figure(figsize=(16,4), dpi=130, facecolor='white', edgecolor='black', frameon=True)# 画布底色

# 添加数据
plt.plot(df['year_month'], df['Value'],'c')#改变颜色和线条

'''
一般不需要改动下面的,只需要设置一些固定常量
'''

# 构造X轴标签,一般不用设置
xticks = [df['year_month'][i] for i in np.arange(0,df['year_month'].size,15)]#X轴的显示
#X轴设置倾斜度,可以解决标签过长的问题,大小可以设置默认
plt.xticks(xticks,rotation=100,size=10)

# 设置图形上的各类主题值
plt.suptitle('主标题:unemployment-rate-1948-2010',size=17,y=1.0)
plt.title("绘制日期:2022年   昵称:王小王-123", loc='right',size=15,y=1)

plt.title("主页:https://blog.csdn.net/weixin_47723732", loc='left',size=12,y=1)

# 设置坐标轴上的字体标签
font_dict = {'fontsize': 15, 'fontweight': 'bold', 'color': 'black','fontfamily':'KaiTi'}
plt.xlabel('年月',font_dict)
plt.ylabel('失业率',font_dict)

到此这篇关于matplotlib绘制折线图的基本配置(万能模板案例)的文章就介绍到这了,更多相关matplotlib绘制折线图内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • wxPython+Matplotlib绘制折线图表

    使用Matplotlib在wxPython的Panel上绘制曲线图,需要导入: import numpy from matplotlib.backends.backend_wxagg import FigureCanvasWxAgg as FigureCanvas from matplotlib.figure import Figure 下面直接贴出源代码: #coding=utf-8 """ 程序的主入口 """ import wx impor

  • python使用matplotlib模块绘制多条折线图、散点图

    今天想直观的展示一下数据就用到了matplotlib模块,之前都是一张图只有一条曲线,现在想同一个图片上绘制多条曲线来对比,实现很简单,具体如下: #!usr/bin/env python #encoding:utf-8 ''' __Author__:沂水寒城 功能:折线图.散点图测试 ''' import random import matplotlib import matplotlib.pyplot as plt def list2mat(data_list,w): ''' 切片.转置 '

  • python使用matplotlib绘制折线图的示例代码

    示例代码如下: #!/usr/bin/python #-*- coding: utf-8 -*- import matplotlib.pyplot as plt # figsize - 图像尺寸(figsize=(10,10)) # facecolor - 背景色(facecolor="blue") # dpi - 分辨率(dpi=72) fig = plt.figure(figsize=(10,10),facecolor="blue") #figsize默认为4,

  • python学习之使用Matplotlib画实时的动态折线图的示例代码

    有时,为了方便看数据的变化情况,需要画一个动态图来看整体的变化情况.主要就是用Matplotlib库. 首先,说明plot函数的说明. plt.plot(x,y,format_string,**kwargs) x是x轴数据,y是y轴数据.x与y维度一定要对应. format_string控制曲线的格式字串 下面详细说明: color(c):线条颜色 linestyle(ls):线条样式 linewidth(lw):线的粗细 关于标记的一些参数: marker:标记样式 markeredgecol

  • python数据可视化之matplotlib.pyplot基础以及折线图

    不论是数据挖掘还是数据建模,都免不了数据可视化的问题.对于Python来说,Matplotlib是最著名的绘图库,它主要用于二维绘图,当然它也可以进行简单的三维绘图(基于spyder). - 模块引用 import matplotlib.pyplot as plt #引用画图库中的pyplot模块 -折线条图 语法 import matplotlib.pyplot as plt data=[1,2,3,4,5,4,2,4,6,7] #随便创建了一个数据 plt.plot(data) #引用画图库

  • Matplotlib 折线图plot()所有用法详解

    散点图和折线图是数据分析中最常用的两种图形.其中,折线图用于分析自变量和因变量之间的趋势关系,最适合用于显示随着时间而变化的连续数据,同时还可以看出数量的差异,增长情况. Matplotlib 中绘制散点图的函数为 plot() ,使用语法如下:matplotlib.pyplot.plot(*args, scalex=True, scaley=True, data=None, **kwargs) 常用参数及说明: 参数 接收值 说明 默认值 x,y array 表示 x 轴与 y 轴对应的数据:

  • Python可视化Matplotlib折线图plot用法详解

    目录 1.完善原始折线图 - 给图形添加辅助功能 1.1 准备数据并画出初始折线图 1.2 添加自定义x,y刻度 1.3 中文显示问题解决 1.4 添加网格显示 1.5 添加描述信息 1.6 图像保存 2. 在一个坐标系中绘制多个图像 2.1 多次plot 2.2 显示图例 2.3 折线图的应用场景 折线图是数据分析中非常常用的图形.其中,折线图主要是以折线的上升或下降来表示统计数量的增减变化的统计图.用于分析自变量和因变量之间的趋势关系,最适合用于显示随着时间而变化的连续数据,同时还可以看出数

  • Python利用matplotlib绘制折线图的新手教程

    前言 matplotlib是Python中的一个第三方库.主要用于开发2D图表,以渐进式.交互式的方式实现数据可视化,可以更直观的呈现数据,使数据更具说服力. 一.安装matplotlib pip install matplotlib -i https://pypi.tuna.tsinghua.edu.cn/simple 二.matplotlib图像简介 matplotlib的图像分为三层,容器层.辅助显示层和图像层. 1. 容器层主要由Canvas.Figure.Axes组成. Canvas位

  • python使用matplotlib绘制折线图教程

    matplotlib简介 matplotlib 是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地行制图.而且也可以方便地将它作为绘图控件,嵌入GUI应用程序中. 它的文档相当完备,并且Gallery页面中有上百幅缩略图,打开之后都有源程序.因此如果你需要绘制某种类型的图,只需要在这个页面中浏览/复制/粘贴一下,基本上都能搞定. 在Linux下比较著名的数据图工具还有gnuplot,这个是免费的,Python有一个包可以调用gnuplot,但是语法比较不

  • python matplotlib折线图样式实现过程

    这篇文章主要介绍了python matplotlib折线图样式实现过程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一:简单的折线图 import matplotlib.pyplot as plt #支持中文显示 plt.rcParams["font.sans-serif"]=["SimHei"] #x,y数据 x_data = [1,2,3,4,5] y_data = [10,30,20,25,28] plt.

  • matplotlib 曲线图 和 折线图 plt.plot()实例

    我就废话不多说了,大家还是直接看代码吧! 绘制曲线: import time import numpy as np import matplotlib.pyplot as plt x = np.linspace(0, 10, 1000) y = np.sin(x) plt.figure(figsize=(6,4)) plt.plot(x,y,color="red",linewidth=1 ) plt.xlabel("x") #xlabel.ylabel:分别设置X.

  • Python基于Matplotlib库简单绘制折线图的方法示例

    本文实例讲述了Python基于Matplotlib库简单绘制折线图的方法.分享给大家供大家参考,具体如下: Matplotlib画折线图,有一些离散点,想看看这些点的变动趋势: import matplotlib.pyplot as plt x1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13] y1=[30,31,31,32,33,35,35,40,47,62,99,186,480] x2 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 1

随机推荐