原来python也可以画(python画图)

发布时间:2022-11-12

本文目录一览:

1、Python语言画图 2、用Python画图 3、python除了乌龟还能用什么

Python语言画图

1)首先Python画图与WING IDE无关,最简单的是使用Tkinter画图 2)画出单词有很多方法,最笨的是用划线方式一笔一笔的画。其次是直接输出文本,但意义不大。另外一种方法是调用图片,你可以在图片上任意画好东西后显示出来。 3)代码示例:(这个例子就画了个简单的字母P)

from Tkinter import *
root = Tk()
root.title('Drawing Example')
canvas = Canvas(root, width=200, height=160, bg='white')
canvas.create_line(10, 10, 100, 70)
canvas.create_line(10, 10, 40, 10)
canvas.create_line(40, 10, 40, 40)
canvas.create_line(10, 40, 40, 40)
canvas.pack()
root.mainloop()

用Python画图

今天开始琢磨用Python画图,没使用之前是一脸懵的,我使用的开发环境是Pycharm,这个输出的是一行行命令,这个图画在哪里呢? 搜索之后发现,它会弹出一个对话框,然后就开始画了,比如下图 第一个常用的库是Turtle,它是Python语言中一个很流行的绘制图像的函数库,这个词的意思就是乌龟,你可以想象下一个小乌龟在一个x和y轴的平面坐标系里,从原点开始根据指令控制,爬行出来就是绘制的图形了。 它最常用的指令就是旋转和移动,比如画个圆,就是绕着圆心移动;再比如上图这个怎么画呢,其实主要就两个命令:

turtle.forward(200)
turtle.left(170)

第一个命令是移动200个单位并画出来轨迹 第二个命令是画笔顺时针转170度,注意此时并没有移动,只是转角度 然后呢?循环重复就画出来这个图了 好玩吧。 有需要仔细研究的可以看下这篇文章,这个牛人最后用这个库画个移动的钟表,太赞了。 Turtle虽好玩,但是我想要的是我给定数据,然后让它画图,这里就找到另一个常用的画图的库了。 Matplotlib是Python最著名的绘图库,它提供了一整套和MATLAB相似的命令API,十分适合交互式地进行制图。其中,matplotlib的pyplot模块一般是最常用的,可以方便用户快速绘制二维图表。 使用起来也挺简单, 首先import matplotlib.pyplot as plt导入画图的图。 然后给定x和y,用这个命令plt.plot(x, y)就能画图了,接着用plt.show()就可以把图形展示出来。 接着就是各种完善,比如加标题,设定x轴和y轴标签,范围,颜色,网格等等,在这篇文章里介绍得很详细。 现在互联网的好处就是你需要什么内容,基本上都能搜索出来,而且还是免费的。 我为什么要研究这个呢?当然是为了用,比如我把比特币的曲线自己画出来可好? 假设现在有个数据CSV文件,一列是日期,另一列是比特币的价格,那用这个命令画下: 这两列数据读到pandas中,日期为df['time']列,比特币价格为df['ini'],那我只要使用如下命令:

plt.plot(df['time'], df['ini'])
plt.show()

就能得到如下图: 自己画的是不是很香,哈哈! 然后呢,我在上篇文章中介绍过求Ahr999指数,那可不可以也放到这张图中呢?不就是加一条命令嘛:

plt.plot(df['time'], df['Ahr999'])

图形如下: 但是,Ahr999指数怎么就一条线不动啊,原来两个Y轴不一致,显示出来太怪了,需要用多Y轴,问题来了。 继续谷歌一下,把第二个Y轴放右边就行了,不过得使用多图,重新绘制:

fig = plt.figure()  # 多图
ax1 = fig.add_subplot(111)
ax1.plot(df['time'], df['ini'], label="BTC price")  # 绘制第一个图比特币价格
ax1.set_ylabel('BTC price')  # 加上标签
# 第二个直接对称就行了
ax2 = ax1.twinx()  # 在右边增加一个Y轴
ax2.plot(df['time'], df['Ahr999'], 'r', label="ahr999")  # 绘制第二个图Ahr999指数,红色
ax2.set_ylim([0, 50])  # 设定第二个Y轴范围
ax2.set_ylabel('ahr999')
plt.grid(color="k", linestyle=":")  # 网格
fig.legend(loc="center")  # 图例
plt.show()

跑起来看看效果,虽然丑了点,但终于跑通了。 这样就可以把所有指数都绘制到一张图中,等等,三个甚至多个Y轴怎么加?这又是一个问题,留给爱思考爱学习的你。 有了自己的数据,建立自己的各个指数,然后再放到图形界面中,同时针对异常情况再自动进行提醒,比如要抄底了,要卖出了,用程序做出自己的晴雨表。

python除了乌龟还能用什么

Python除了乌龟还能画画。 Turtle是Python中一个强大的绘制图像库,可以用来绘制各种图像,使用起来很方便。 但是需要计算各种角度、距离等,所以要想完成一幅复杂的图像还是有一定的难度的。