美文网首页数据可视化
【数据可视化】从画简单的三角函数开始

【数据可视化】从画简单的三角函数开始

作者: 清梦载星河 | 来源:发表于2019-08-07 00:01 被阅读0次
随便放个镇楼图

1. 前言

1.1 目的

  • 画一个包含sin(x)和cos(x)的图
  • 在画图过程中掌握使用matplotlib绘图的过程
  • 在画图的过程中掌握matplotlib中基本元素

1.2 开发环境

  • Anaconda for Python3
  • Jupyter Notebook

1.3 最终效果图

最终效果图

2. 开始

在用matplotlib画函数图之前,回想一下学生时代是怎么在草稿纸上画函数图的……

  1. 首先,导入需要的模块等:
%matplotlib inline #用于Jupyter Notebook
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
plt.style.use('seaborn-whitegrid') # 整体风格,看个人意愿是否需要
  1. 拿出一张图纸,图纸大小一开始可默认不填,后续更改;之后在图纸上画一个坐标轴:
fig = plt.figure(figsize=(24,5),dpi=300) # 在草稿本上找一个空白的地方
ax = plt.axes() #在图纸上画上坐标轴
  • figsize : 用于设置图纸大小;
  • dpi : 分辨率,默认为100,此处设置为300。
  1. 给坐标轴上标上 X 和 Y,顺便给函数图起个名字:
ax.set(xlim=(-12,12),ylim=(-1.5,1.5),
       xlabel='X',ylabel="sin(x)&cos(x) 's value",
       title="sin(x) & cos(x)")
  • xlim 和 ylim : 设置 x 轴和 y 轴的上限和下限,参数是个元组,左为下限,右为上限;
  • xlabel 和 ylabel : 设置 x 轴和 y 轴的标签;

效果图:


  1. 在坐标轴上标上刻度,刻度分为主刻度和次刻度:
ax.xaxis.set_major_locator(plt.MultipleLocator(np.pi)) # 主刻度为pi
ax.xaxis.set_minor_locator(plt.MultipleLocator(np.pi/4)) # 次刻度为pi/4
ax.xaxis.grid(True,which='both') # 主刻度和次刻度的网格线都显示
  • ax.xaxis.set_major_locator()用于设置主刻度;
  • ax.xaxis.set_minor_locator()用于设置次刻度;
  • plt.MultipleLocator()用于设置刻度的倍数;
  • ax.xaxis.grid()用于设置是否显示网格线,参数为True是显示;
  • which用于设置显示哪个刻度,分别有:both, major, minor。
  1. 画图
x = np.linspace(-10,10,100) # 在 -10 到 10 之间取100个x值
# 下面是sin(x)
ax.plot(x,np.sin(x),color='#645394',linestyle='--',label='sin(x)')
# 下面是cos(x)
ax.plot(x,np.cos(x),color='red',linestyle='-.',label='cos(x)')
  • ax.plot()用于画线图;
  • color设置线的颜色,可以是英文,可以是十六进制;
  • linestyle用于设置线型;
  • label用于给线做个标签,设置图例时候会用到。
  1. 添加图例
ax.legend(loc='upper center',ncol=2)
  • legend会自动为由label的图添加图例;
  • loc 用于设置图例位置;
  • ncol 用于设置图例分为几列。
  1. 完成。


相关文章

网友评论

    本文标题:【数据可视化】从画简单的三角函数开始

    本文链接:https://www.haomeiwen.com/subject/hktndctx.html