本文主要是介绍python 等值线 标注 间距、控制_在Matplotlib中设置条间距,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
我不知道如何控制下面代码中从文件中读取数据的条间距。是否有任何方法来调整/调整条之间的空间(不是栏的宽度)?在Input file:
1 4500
2 5000
3 3000
4 4000
5 1000
6 5000#!/usr/bin/python
import numpy as np
import pylab as plot
import matplotlib.pyplot as plt
import numpy, scipy, pylab, random
from matplotlib.ticker import MultipleLocator
import matplotlib as mpl
from matplotlib.ticker import MaxNLocator
with open("file.txt", "r") as f:
x=[]
y=[]
for line in f:
if not line.strip() or line.startswith('@') or line.startswith('#'): continue
row = line.split()
x.append(float(row[0]))
y.append(float(row[1]))
fig = plt.figure(figsize=(3,2))
ax = plt.subplot(111)
plt.ylim(0, 6000)
ax.yaxis.set_major_locator(MaxNLocator(6))
ax.yaxis.set_minor_locator(MultipleLocator(500))
plt.xlim(0+0.5, 7-0.5)
bars=plt.bar(x,y, width=0.2, color='blue', edgecolor='black', align='center', linewidth=0.5)
bars[0].set_facecolor('gray')
bars[1].set_facecolor('orange')
bars[2].set_facecolor('green')
bars[3].set_facecolor('yellow')
bars[4].set_facecolor('cyan')
bars[5].set_facecolor('deeppink')
labels=['A', 'B', 'C', 'D', 'E', 'F']
plt.xticks(x, labels, rotation='45', rotation_mode='anchor', ha='right')
plt.ylabel('Values (m)', fontsize=7)
for axis in ['top','bottom','left','right']:
ax.spines[axis].set_linewidth(0.5)
plt.subplots_adjust(top=0.97)
plt.subplots_adjust(bottom=0.05)
plt.subplots_adjust(left=0.07)
plt.subplots_adjust(right=0.98)
plt.tick_params(axis='both', which='major', labelsize=6)
plt.tick_params(axis='both', which='minor', labelsize=0)
plt.savefig("plot.png", dpi=300, bbox_inches='tight')
这篇关于python 等值线 标注 间距、控制_在Matplotlib中设置条间距的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!