使用Python中的plt库来绘制图表

观前提示以下所有代码都是在Jupyter notebook上,学会运用kupyter notebook后发现它真的十分好用,所以可能放在sublime会出点问题(别问我为什么知道)

#1 简单的绘制两个函数的图像

import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(-10,10,100)#通过调用numpy库的linspaces来随机生成100个数

y = 4/x+1
g = x3-4*x2+2*x+7
plt.plot(x,y)
plt.plot(x,g)#直接显示函数
plt.plot(x,y,label=‘y=4/x+1’)#对函数加以注释
plt.plot(x,g,label=‘y=x3-4x2+2x+7’)
plt.xlabel(“I’m your boyfirend,”)#皮一下
plt.ylabel(“I’am your girlfriend”)#分别对x和y轴加以注释(醒醒,我怎么可能有女朋友)
plt.title(“I’m a handsome boy”)整个图表的标题
plt.plot(x,g,color=‘yellow’,linewidth=3,linestyle=’–’)
plt.plot(x,y,color=‘red’,linewidth=4,linestyle=’-’)

plt.legend() # 用于显示标记,不加的话之前的标记显示不出来
plt.show()

#折线图

import numpy as np
import matplotlib.pyplot as plt
y1=[5,2,7,3,1,4,5,6,8,9,7,4,15]
x1=range(0 ,13)#x的数量要与y的数量一致否则会报错
x2=range(0 ,13)
#plt.plot(x1,y1,label=‘xxx’,linewidth=2,color=‘gary’,marker=’^’,markerfacecolor=‘blue’,maeksize=19)
y2=[9,25,36,15,5,6,18,9,7,4,15,5,4]
plt.plot(x1,y1,label=‘sd’)
#plt.plot(x2,y2,label=‘op’)
plt.plot(x1,y2,label=‘op’)
plt.legend()

#转回正题,本次的作业

y=[20,30,15,35]
x=[i1.15-0.15 for i in range(len(y))]
rects1 = plt.bar(x, y, width=0.3, label=“1”)
y2=[15.0,30.0,40.0,20.0]
x2=[i
1.15+0.15 for i in range(len(y))]#经过不断调节这是最好的偏差值,级当偏差值为width的一半时效果最好
rects2=plt.bar(x2,y2, width=0.3,label=“2”)
plt.xlabel(“what!”)
plt.ylabel(“why?”)
plt.title(“nb”)
labels=[‘1’,‘2’,‘3’,‘4’]
plt.xticks(x, labels)
for rect in rects1:
height=rect.get_height()
plt.text(rect.get_x()+rect.get_width()/2,height,str(height), ha=“center”, va=“bottom”)
for rect in rects2:
height=rect.get_height()
plt.text(rect.get_x()+rect.get_width()/2,height,str(height), ha=“center”, va=“bottom”)

#个人认为rects是存储着所有我要输出的每个柱状图的各个参数,这在我使用print(rects)的时候得到证实

plt.legend()
plt.show()

输出结果:

你以为这就完了吗?不不不当我上网搜寻的时候我发现一个个更好的东西

在图表中一旦引入中文最终并不会显示,二是会被一堆方框所掩盖(这怎么行一张图表里没有中文,就仿佛吃方便面没有热水)

所以我最终找到了解决办法

引入下面的模块即可解决

from matplotlib import font_manager

当然他还能做到更多(下面这个程序是我参考别人的打出来的,可能跟别人有些雷同,参考者就把他当一个参考看就好了)

先看下结果:

from matplotlib import pyplot as plt
from matplotlib import font_manager

my_font = font_manager.FontProperties(fname=“C:/Windows/Fonts/simsun.ttc”)

a = [“无名之辈”, “狗十三”, “毒液:致命守护者”, “憨豆特工3”]
b_7 = [991.94, 375.64, 200.48, 73.27]
b_8 = [1908.22, 547.61, 466.23, 193.8]
b_9 = [1532.87, 525.63, 332.35, 170.57]

b = b_7 + b_8 + b_9
y_1 = []
y_2 = []
y_3 = []
y_4 = []
for i in range(len(b)):
if i % 4 == 0:
y_1.append(b[i])
elif i % 4 == 1:
y_2.append(b[i])
elif i % 4 == 2:
y_3.append(b[i])
else:
y_4.append(b[i])

bar_width = 0.2
x_1 = [i for i in range(3)]
x_2 = [i+bar_width for i in x_1]
x_3 = [i+bar_width2 for i in x_1]
x_4 = [i+bar_width
3 for i in x_1]

plt.figure(figsize=(20, 8), dpi=80)

plt.bar(x_1, y_1, width=bar_width, label=“天气之子”, color=‘red’)
plt.bar(x_2, y_2, width=bar_width, label=“霹雳娇娃”, color=‘blue’)
plt.bar(x_3, y_3, width=bar_width, label=“海上钢琴师”, color=‘yellow’)
plt.bar(x_4, y_4, width=bar_width, label=“终结者”, color=‘gray’)

plt.legend(prop=my_font, loc=5)

#调整x和y的刻度
x_tick = [i+0.1 for i in x_2]
xtick_label = [‘12月7日’, ‘12月8日’, ‘12月9日’]
plt.xticks(x_tick, xtick_label, fontproperties=my_font, fontsize=15)
plt.yticks(fontsize=15)

)
plt.ylabel(“票房(亿元)”, fontproperties=my_font, fontsize=20)
plt.title(“电影票房”, fontproperties=my_font, fontsize=20)

plt.grid(alpha=0.3)

xa = x_1 + x_2 + x_3 + x_4
yb = y_1 + y_2 + y_3 + y_4
for a1, b1 in zip(xa, yb):
plt.text(a1, b1, b1, ha=‘center’, va=‘bottom’, fontsize=14)

plt.savefig(‘T2.png’)
plt.show()

#4 其他的图写完,我这博客会不会太长,算了不管了

饼图

import numpy as np
import matplotlib.pyplot as plt
labels=‘one’,‘two’,‘three’,‘four’
sizes=[50,10,20,20]
explode=(0, 0.1, 0,0)
fig1, ax1 = plt.subplots()
ax1.pie(sizes,labels=labels,autopct=’%1.0f%%’,startangle=10)
ax1.axis(‘equal’)#这个模块是ax 1(数字1)
plt.show()

#散点图(这个最简单,代码量少)

a=np.random.random(50)
v=np.random.random(50)
colors=np.random.random(50)#随机颜色
area=(100*np.random.random(50))#图表区域面积
plt.scatter(a,v)#生成散点类型
plt.show()

)

使用plt库绘制图标相关推荐

  1. Python学习-Matplotlib库绘制简单点阵图、线型图操作

    Python学习-Matplotlib库绘制简单散点图图和线型图.标签设置以及刻度线设置操作 目录 1.Matplotlib绘图细节的简单理解 2.绘制点图.线型图 3.给图表设置复杂标注 4.移动刻 ...

  2. Python中使用random随机函数与Matplotlib库绘制随机漫步图

    Python中使用random随机函数与Matplotlib库绘制随机漫步图 一.概述 随机现象在我们的生活中并不少见,我们常见的一次抛硬币的正反面,股票的走势等等,都是随机事件.这些不确定性事件给我 ...

  3. python-matplotlib库绘制饼形图专题(从一般饼状图到内嵌环形图)

    python-matplotlib库绘制饼形图专题(从一般饼状图到内嵌环形图) 文章目录 1.plt.pie() 2. 饼图基本 3. 饼状图进阶 4. 环形图 5. 内嵌环形图       ʚʕ̯• ...

  4. wordcloud:利用fontawesome字体绘制图标词云图

    根据文本生成词云的操作很常见,在某些场景下,我们可以遇到图标也按照某种形状排列的情况,那么可以用生成词云图的方法生成这样的图标词云图吗? 如何应用fontawesome字体 当前最常见的图标字体就是w ...

  5. python的turtle怎么画曲线_利用 turtle库绘制简单图形

    turtle库是python的基础绘图库,这个库被介绍为一个最常用的用来介绍编程知识的方法库,其主要是用于程序设计入门,是标准库之一,利用turtle可以制作很多复杂的绘图. turtle名称含义为& ...

  6. 用python的matplotlib和numpy库绘制股票K线均线和成交量的整合效果(含量化验证交易策略代码)...

    在用python的matplotlib和numpy库绘制股票K线均线的整合效果(含从网络接口爬取数据和验证交易策略代码)一文里,我讲述了通过爬虫接口得到股票数据并绘制出K线均线图形的方式,在本文里,将 ...

  7. 用python画股票分时图 github_用python的matplotlib和numpy库绘制股票K线均线和成交量的整合效果(含量化验证交易策略代码)...

    在用python的matplotlib和numpy库绘制股票K线均线的整合效果(含从网络接口爬取数据和验证交易策略代码)一文里,我讲述了通过爬虫接口得到股票数据并绘制出K线均线图形的方式,在本文里,将 ...

  8. python的matplotlib库绘制条形图、散点图、饼图、折线图

    python的matplotlib库绘制条形图.散点图.饼图.折线图 当我们学会了爬虫,抓取到了一些数据,接下来就是做数据分析了.本文章介绍绘制图形的基本代码. 打开cmd用pip 安装,若输入pip ...

  9. Python Matplotlib库绘制曲线图 最快入门教程(最详细最简单)

    文章目录 1.导入Matplotlib库 2.最常用的绘图函数plot 3.展示绘制完成的图像 4.保存绘制的图像 5.分割子绘图区域 6.设置横纵轴的坐标轴名称 7.设置图像名称 8.让图像中可以出 ...

最新文章

  1. Scrum Master角色可能消失吗?
  2. Linux下的示例程序
  3. Docker 是什么?
  4. linux下获取某文件的总行数
  5. 13 个 Python 新手练级项目
  6. 数模笔记_多变量最优化计算之牛顿法
  7. SpringBoot之使用(一)
  8. 吴恩达机器学习ex5:正则化线性回归和方差与偏差
  9. “咏刚的家”全新改版
  10. 苹果开发者账号注册和邓白氏申请流程
  11. WebSphere-解决办法:UndefinedVariableException: Undefined variable HOST
  12. IE:免去脱机浏览中的麻烦(转)
  13. swift subscript scraps
  14. java18_【Java】Java_18 方法
  15. 成功的条件:高人指点、贵人相助、小人监督、个人奋斗
  16. 云原生(三十九) | Kubernetes篇之kustomize入门了解
  17. 360浏览器和搜狗浏览器查看双内核版本及如何控制内核版本
  18. SQL Server over()
  19. JS 手机号/身份证/银行账号/邮箱/QQ/电话 掩码处理
  20. Merriam-Webster's Vocabulary Builder 学习笔记 Unit 18

热门文章

  1. s3c2410 bootloader 第一部分启动代码分析
  2. B站图形学MOOC资源整理(英文)
  3. 大学生英语四级备战之③听力
  4. 解密上网使用随身wifi和路由器有什么不同?
  5. VBA的日历插件--excel2010后默认没有了?
  6. 破解QQ2008会员涂鸦QQ表情
  7. Autodesk 论坛 - 您开发的必经之地
  8. spark业务开发-列选择
  9. qml自学笔记------自己写类似于劲舞团的按键小游戏(上)
  10. python与数据处理课后答案_python数据处理与科学计算_课程2020最新章节测试网课课后答案...