matplotlib的基本图表配置之plot的使用(二)

举报
王小王-123 发表于 2022/03/25 22:44:03 2022/03/25
【摘要】 导入库 import matplotlib.pyplot as plt 构建画布 plt.plot() 没有任何配置的plot的基本图形是这样,默认X轴的范围是:-0.04至0.04 图形的构成- Figure - 画布 - Axes - 坐标系 - Axis - 坐标轴(X轴,y轴) - 图形 - plot()折线...

导入库

import matplotlib.pyplot as plt

构建画布

plt.plot()

没有任何配置的plot的基本图形是这样,默认X轴的范围是:-0.04至0.04

图形的构成
- Figure - 画布
- Axes - 坐标系
- Axis - 坐标轴(X轴,y轴)
- 图形 - plot()折线图,scatter()散点图,bar()柱状图, pie()饼图
- 标题、图例、标签、......

# 官网文档: https://matplotlib.org/
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 2 * np.pi, 200)  # 
y = np.sin(x)

# plt.plot(x,y) : 其实等价于完成了下面的代码
fig, ax = plt.subplots()
ax.plot(x, y)
plt.show()

# 构造数据
# 位置 (2维:x,y一一对应)
x = np.linspace(0, 2 * np.pi, 200)  # 从0到2pi的200个值
y = np.sin(x)                       # 从sin(0)到sin(2pi)的200个值
# 颜色(0维)
c = 'red'
c = 'r'
c = '#FF0000'
# 大小(0维): 线宽
lw = 1
# 生成一个Figure画布和一个Axes坐标系
fig, ax = plt.subplots()
# 在生成的坐标系下画折线图
ax.plot(x, y, c, linewidth=lw)
# 显示图形
plt.show()

绘制五角星(将图表放大即可)

点击此处去官网探索一下吧!

Writing mathematical expressions — Matplotlib 3.5.1 documentation

还可以绘制其他的图形

# 点的颜色,形状,大小
plt.plot(1,1,color='r',marker='*',markersize=120)

参考上面的图表类型,我们可以绘制一些我们需要的图标

 

 

 

 这类高级marker使用marker ='$\circledR$'来调用

可以显示的形状    marker名称
ϖ   \varpi
ϱ   \varrho
ς   \varsigma
ϑ   \vartheta
ξ   \xi
ζ   \zeta
Δ   \Delta
Γ   \Gamma
Λ   \Lambda
Ω   \Omega
Φ   \Phi
Π   \Pi
Ψ   \Psi
Σ   \Sigma
Θ   \Theta
Υ   \Upsilon
Ξ   \Xi
℧   \mho
∇   \nabla
ℵ   \aleph
ℶ   \beth
ℸ   \daleth
ℷ   \gimel
/   /
[   [
⇓   \Downarrow
⇑   \Uparrow
‖   \Vert
↓   \downarrow
⟨   \langle
⌈   \lceil
⌊   \lfloor
⌞   \llcorner
⌟   \lrcorner
⟩   \rangle
⌉   \rceil
⌋   \rfloor
⌜   \ulcorner
↑   \uparrow
⌝   \urcorner
\vert
{   \{
\|
}   \}
]   ]
|
⋂   \bigcap
⋃   \bigcup
⨀   \bigodot
⨁   \bigoplus
⨂   \bigotimes
⨄   \biguplus
⋁   \bigvee
⋀   \bigwedge
∐   \coprod
∫   \int
∮   \oint
∏   \prod
∑   \sum

 绘制多条曲线

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 2 * np.pi, 50)  # 
y1 = np.sin(x)
y2 = np.cos(x)

plt.plot(x,y1,label='sin(x)') # plt.plot() -> 在当前坐标系中画一条折线
plt.plot(x,y2,label='cos(x)') # plt.plot() -> 在当前坐标系中画一条折线,自动区分颜色
plt.legend()

使用pandas绘图

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

x = np.linspace(0, 2 * np.pi, 50)  # 
y1 = np.sin(x)
y2 = np.cos(x)

data = np.concatenate(([x],[y1],[y2]),axis=0)
df = pd.DataFrame(data).T
df.set_index(0,inplace=True)
df.columns = ['sinx','cosx']

# DataFrame.plot(x=None, y=None, kind='line', ax=None, subplots=False, 
#                 sharex=None, sharey=False, layout=None, figsize=None, 
#                 use_index=True, title=None, grid=None, legend=True, 
#                 style=None, logx=False, logy=False, loglog=False, 
#                 xticks=None, yticks=None, xlim=None, ylim=None, rot=None, 
#                 fontsize=None, colormap=None, position=0.5, table=False, yerr=None, 
#                 xerr=None, stacked=True/False, sort_columns=False, 
#                 secondary_y=False, mark_right=True, **kwds)

df.plot()

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

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)']

# Pandas DataFrame plot函数
df.plot(x='x',y=['sin(x)','cos(x)'])

 

 每文一语

总以为来日方长,你却忘了世事无常

文章来源: wxw-123.blog.csdn.net,作者:王小王-123,版权归原作者所有,如需转载,请联系作者。

原文链接:wxw-123.blog.csdn.net/article/details/123742854

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。