Python画图-函数/参数说明
发表于|更新于
|
前言
一开始吧,做这东西是冲着嫖专利去的。本来还以为自己主要任务是改代码,加功能,跑数据。但没想到全跑去画图了,幽默。
为了不浪费这几个星期的努力(百度/CSDN,甚至还去博客园和官方文档找了半天),还是记录一下得了,说不定以后能用得到呢。
主体架构
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| import matplotlib.pyplot as plt
plt.rcParams.update({'font.size': 40})
fig, ax = plt.subplots(figsize=(9, 7))
ax.bar(x, y, width=0.22, color=colors[], label=labels[], edgecolor='black', linewidth=1.6, hatch=size_bar[i])
ax.plot(x, y, color=colors[i], label=g_value,linewidth=6, marker=size_plt[i], markersize=16, markerfacecolor='none', markeredgewidth=4)
ax.set_ylabel('x') ax.set_xlabel('y')
ax.legend()
plt.tight_layout() plt.savefig('path', dpi=300) plt.show()
|
函数及参数说明
多柱状图设置柱子位置
以标签为中心,两边分散,看具体有几个改size数值
len为柱状图个数
1 2 3 4
| import numpy as np width = 0.22 x = np.arange(len) ax.bar(x + (i - size) * width,...)
|
调整坐标轴刻度
both指x与y轴均使用,刻度大小,朝向
1
| ax.tick_params("both", length=15, width=2.0, direction='in')
|
设置x轴刻度名字
x为画图里x放的东西,直接复制粘贴,要是用的多柱状图就写x,label为你要修改成的名字的字符串数组,要是重叠就在字符串前面加空格
1
| plt.xticks(x,labels=str_var)
|
设置x,y轴显示范围
1 2
| plt.xlim(start, end) plt.ylim(start, end)
|
设置x,y轴显示刻度
以start为第一个,end为最后一个,平均设置number个刻度
1 2
| ax.yaxis.set_ticks(np.linspace(start, end, number)) ax.xaxis.set_ticks(np.linspace(start, end, number))
|
设置画图四周边框宽度
疑似是不需要写注释
1 2 3 4
| ax.spines['bottom'].set_linewidth(3) ax.spines['top'].set_linewidth(3) ax.spines['left'].set_linewidth(3) ax.spines['right'].set_linewidth(3)
|
打印图例
直接添加到画图最后,还没去琢磨怎么直接画图例
要是用不了就继续百度
1 2 3 4 5 6 7 8 9 10 11
| figsize = (22, 4) fig_leg = plt.figure(figsize=figsize) ax_leg = fig_leg.add_subplot(111)
ax_leg.legend(*ax.get_legend_handles_labels(), loc='center', ncol=4, edgecolor='black')
ax_leg.axis('off') fig_leg.show()
fig_leg.savefig('path', dpi=300)
|