import matplotlib.pyplot as plt
plt.style.use('seaborn')
plt.grid(linestyle="-", alpha=0.5,linewidth=1.5)
x = [u'<=5',u'5<l<=10',u'10<l<=15',u'15<l<=20',u'20<l<=25',u'25<l<=30',u'30<l<=35',u'35<l']
k1 = [0.909090909, 0.853952395, 0.84803377, 0.834743006, 0.789830508, 0.773584906, 0.625, 0.285714286]
k2 = [0.909090909, 0.888627681, 0.872250611, 0.860767729, 0.850847458, 0.849056604, 0.583333333, 0.714285714]
k3 = [0.909090909, 0.889509257, 0.884692291, 0.869225764, 0.861016949, 0.849056604, 0.708333333, 0.571428571]
for i in range(len(k1)):
k1[i]*=100
k2[i]*=100
k3[i]*=100
plt.plot(x,k3,'s-',color = 'red',label="Bert + MS-SAN")
plt.plot(x,k2,'o-',color = 'royalblue',label="MS-SAN")
plt.plot(x,k1,'*-',color = 'limegreen',label="Bert-base")
plt.tick_params(labelsize=12)
plt.xlabel("Avg_length(l)")
plt.ylabel("ACC(%)")
plt.legend(loc = "best")
plt.show()
'.' point marker
',' pixel marker
'o' circle marker
'v' triangle_down marker
'^' triangle_up marker
'<' triangle_left marker
'>' triangle_right marker
'1' tri_down marker
'2' tri_up marker
'3' tri_left marker
'4' tri_right marker
's' square marker
'p' pentagon marker
'*' star marker
'h' hexagon1 marker
'H' hexagon2 marker
'+' plus marker
'x' x marker
'D' diamond marker
'd' thin_diamond marker
'|' vline marker
'_' hline marker
2, color
一图胜千言,使用Python的matplotlib库,可以快速创建高质量的图形。
用matplotlib生成基本图形非常简单,只需要几行代码,但要创建复杂的图表,需要调用更多的命令和反复试验,这要求用户对matplotlib有深入的认识。
我们推出一个新的系列教程:Python数据可视化,针对初级和中级用户,将理论和示例代码相结合,分别使用matplotlib, seaborn, plotly等工具实现可视化。
本文主题是如何用Matplotlib创建直方图和密度图。
import numpy as np
%matplotlib inline
#plt.hist(x, bins=10, range=None, normed=False, weights=None, cumulative=False, bottom=None,
#histtype='bar', align='mid', orientation='vertical',rwidth=Non
matplotlib.pyplot.hist(
x, bins=10, range=None, normed=False,
weights=None, cumulative=False, bottom=None,
histtype=u'bar', align=u'mid', orientation=u'vertical',
rwidth...
1.直方图
直方图是用一系列不等高的长方形来表示数据,宽度表示数据范围的间隔,高度表示在给定间隔内数据出现的频数,长方形的高度跟落在间隔内的数据数量成正比,变化的高度形态反映了数据的分布情况。
2.导入相关库
Matplotlib 是 Python 的绘图库。 它可与 NumPy 一起使用,提供了一种有效的 MatLab 开源替代方案。 我们一般用到的是 Matplotlib 的 Pyplot 函数集合。
from matplotlib import pyplot as plt
Pyplot 中使用
文章目录1.直方图+密度图2.堆叠直方图
plt.hist(x, bins=10, range=None, normed=False, weights=None, cumulative=False, bottom=None,
histtype='bar', align='mid', orientation='vertical',rwidth=None, log=False, color=None...
直接修改yticks
plt.yticks(plt.yticks()[0], np.round(np.array(plt.yticks()[0])/len(ap_train), 2));
ap_train['REGION_POPULATION_RELATIVE'].hist(bins=30)
plt.legend()
plt.xlabel='人口密度'
plt.yticks(plt.yticks()[0], np.round(np.array(plt.yticks
要绘制直方图,可以使用matplotlib库的plt.hist()函数。该函数接受一组数据和一些参数,包括颜色、边缘颜色、透明度和柱子的数量等等。下面是一个绘制直方图的Python代码示例:
```python
import matplotlib.pyplot as plt
import numpy as np
# 生成一组随机数据
data = np.random.randn(1000)
# 绘制直方图
plt.hist(data, bins=30, density=True, alpha=0.5, histtype='stepfilled', color='steelblue', edgecolor='none')
# 添加标题和坐标轴标签
plt.title('Histogram')
plt.xlabel('Value')
plt.ylabel('Frequency')
# 显示图形
plt.show()
要绘制概率密度函数,可以使用sns.kdeplot()函数。该函数可以通过输入一组数据生成一个密度图,并且可以选择是否填充颜色。下面是一个绘制概率密度函数的Python代码示例:
```python
import seaborn as sns
import matplotlib.pyplot as plt
# 生成一组随机数据
data = np.random.randn(1000)
# 绘制概率密度函数
sns.kdeplot(data, shade=True)
# 显示图形
plt.show()