python数据可视化之matplotlib精进,Python数据可视化之matplotlib实践 源码 第二篇 精进 第五章...

该博客展示了如何利用matplotlib库在Python中创建不同类型的图表。包括设置刻度、标签样式、自定义网格线、添加注释和箭头等。代码示例包括正弦函数曲线、自定义颜色和标签、货币格式的Y轴标签以及带有箭头的注解。
摘要由CSDN通过智能技术生成

图 5.1

c11d3390389a4db4163d892b88c2db7f.png

8f900a89c6347c561fdf2122f13be562.png

961ddebeb323a10fe0623af514929fc1.png

importmatplotlib.pyplot as pltimportnumpy as npfrom matplotlib.ticker importAutoMinorLocator, MultipleLocator, FuncFormatter

x=np.linspace(0.5, 3.5, 100)

y=np.sin(x)

fig=plt.figure(figsize=(8, 8))

ax=fig.add_subplot(111)

ax.xaxis.set_major_locator(MultipleLocator(1.0))

ax.yaxis.set_major_locator(MultipleLocator(1.0))

ax.xaxis.set_minor_locator(AutoMinorLocator(4))

ax.yaxis.set_minor_locator(AutoMinorLocator(4))defminor_tick(x, pos):if not x%1.0:return ""

return "%.2f"%x

ax.xaxis.set_minor_formatter(FuncFormatter(minor_tick))

ax.tick_params("y", which='major',length=15, width=2.0, colors='r')

ax.tick_params(which='minor', length=5, width=1.0, labelsize=10, labelcolor='0.25')

ax.set_xlim(0,4)

ax.set_ylim(0,2)

ax.plot(x, y, c=(0.25, 0.25, 1.00), lw=2, zorder=10)#ax.plot(x, y, c=(0.25, 0.25, 1.00), lw=2, zorder=0)

ax.grid(linestyle='-', linewidth=0.5, color='r', zorder=0)#ax.grid(linestyle='-', linewidth=0.5, color='r', zorder=10)#ax.grid(linestyle='--', linewidth=0.5, color='0.25', zorder=0)

plt.show()

View Code

-------------------------------------------------------------------------------------

图 5.2

ba27af57da62a31663640709f65f45e9.png

8f900a89c6347c561fdf2122f13be562.png

961ddebeb323a10fe0623af514929fc1.png

importmatplotlib.pyplot as pltimportnumpy as np

fig=plt.figure(facecolor=(1.0, 1.0, 0.9412))

ax=fig.add_axes([0.1, 0.4, 0.5, 0.5])for ticklabel inax.xaxis.get_ticklabels():

ticklabel.set_color("slateblue")

ticklabel.set_fontsize(18)

ticklabel.set_rotation(30)for ticklabel inax.yaxis.get_ticklabels():

ticklabel.set_color("lightgreen")

ticklabel.set_fontsize(20)

ticklabel.set_rotation(2)

plt.show()

View Code

-------------------------------------------------------------------------------------

图 5.3

c74e4aaf2099a0258259ecd3a34f5751.png

8f900a89c6347c561fdf2122f13be562.png

961ddebeb323a10fe0623af514929fc1.png

importmatplotlib.pyplot as pltimportnumpy as npfrom calendar importmonth_name, day_namefrom matplotlib.ticker importFormatStrFormatter

fig=plt.figure()

ax=fig.add_axes([0.2, 0.2, 0.7, 0.7])

x=np.arange(1, 8, 1)

y=2*x

ax.plot(x, y, ls='-', lw=2, color='orange', marker='o',

ms=20, mfc='c', mec='r')

ax.yaxis.set_major_formatter(FormatStrFormatter(r"$\yen%1.1f$"))

plt.xticks(x, day_name[0:7], rotation=20)

ax.set_xlim(0,8)

ax.set_ylim(0,18)

plt.show()

View Code

-------------------------------------------------------------------------------------

图 5.4

4301447c74d485bf20e00ddada358e41.png

8f900a89c6347c561fdf2122f13be562.png

961ddebeb323a10fe0623af514929fc1.png

importmatplotlib.pyplot as pltimportnumpy as np

x=np.linspace(0.5, 3.5, 100)

y=np.sin(x)

fig=plt.figure(figsize=(8, 8))

ax=fig.add_subplot(111)

ax.plot(x, y, c='b', ls='-', lw=2)

ax.annotate("maximum", xy=(np.pi/2, 1.0), xycoords='data',

xytext=((np.pi/2)+0.15, 0.8), textcoords="data",

weight="bold", color='r',

arrowprops=dict(arrowstyle='->', connectionstyle='arc3', color='r'))

ax.text(2.8, 0.4, "$y=\sin(x)$", fontsize=20, color='b',

bbox=dict(facecolor='y', alpha=0.5))

plt.show()

View Code

-------------------------------------------------------------------------------------

图 5.5

来源:oschina

链接:https://my.oschina.net/u/4389867/blog/4288097

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值