Download Microsoft Visual Studio

Microsoft Visual Studio enables you develop your python Application, to use Microsoft Visual Studio developing your application, first thing is to install Visual Studio.

Download Microsoft Visual Studio online, download Visual Studio .

Choose Python when installing Microsoft Visual Studio

After installation complete, launch the Visual Studio and create a project.

  1. Select File > New > Project
  2. In the New Project window, expand Installed, expand Python.
  3. In the template, select Python Application.
  4. Choose your Name and Location, then click OK.

Install matplotlib and numpy package

  1. Select View > Ohter Windows > Python Environments.
  2. In the right side of window, switch to Python Environment (In same window to the Solution Explorer).
  3. Select one version, for example, Python 3.6. Select Packages.
  4. In the search box, type matplotlib and select “pip install matplotlib” from PyPI.
  5. Wait for the installation complete.
  6. Repeat above two steps for numpy.

Open python file, write code to plot a circle step by step

The equation for a circle is x^2 + y^2 = 1, therefore, y = +sqrt(1-x^2) and y = -sqrt(1-x^2).

  1. Select Soltuion Explorer, double click on the python file to open it, in my side, the file name is PythonApplication1.py.
  2. Import pyplot and numpy libraries.
import matplotlib.pyplot as plt
import numpy as np
  1. Define a Figure window with name Figure1 and size as width=5, height=5.
plt.figure(num=1,figsize=(5,5))
  1. Use numpy.linspace to define x with some points, starting from -1 to 1, randomly generate 500 points.
  2. Use numpy.sqrt to define the corresponding y1 and y2.
x = np.linspace(-1, 1, 500)
y1 = np.sqrt(1-x**2)
y2 = -np.sqrt(1-x**2)
  1. Plot the figure and show the figure
l1, = plt.plot(x, y1, color='blue')
l2, = plt.plot(x, y2, color='blue')
... plt.show()
  1. Here is what you get so far:

Customize your Figure

(NOTE: all the code need be added before the line of plt.show())

  1. Then, you can customize the steps and points in the x axis and y axis, the functions are pyplot.xticks and pyplot.yticks.
  2. In following code, I defined some numbers by using numpy.arange(), the numbers are -1, -0.5, 0, 0.5, 1. Use these numbers both for x axis and y axis.
new_ticks = np.arange(-1,1,0.5)
plt.xticks(new_ticks)
plt.yticks(new_ticks)
  1. If you want to customize the border and axis location, you can use plt.gca(), the following code did three things:

    • Set the position of y axis to -1.
    • Set the postion of x axis to -1.
    • Remove the border of right edge.
    • Remove the border of top edge.
ax = plt.gca()
ax.spines['left'].set_position(('data',-1))
ax.spines['bottom'].set_position(('data',-1))
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')
  1. Now here is what you get:
  2. If you want to move the axis to 0, then just change the value from -1 to 0 in above code.
ax.spines['left'].set_position(('data',0))
ax.spines['bottom'].set_position(('data',0))
  1. Add a legend to the upper right corner, the string inside the ' should sround with $, and it will render better acording to what support best by the system.
plt.legend(handles=[l1,l2,], labels=[r'$x^2+y^2=1$'], loc='upper right')
  1. Add axes at the end of the axis by using plt.annotate().
plt.annotate('$x$', xy=(0.98,0.5), ha='left', va='top', xycoords='axes fraction', fontsize=20)
plt.annotate('$y$', xy=(0.5,1), ha='left', va='top', xycoords='axes fraction', textcoords='offset points',fontsize=20)
  1. This is what you get finall, pretty cool.

使用Python画一个带坐标轴的圆的更多相关文章

  1. 用CSS画一个带阴影的三角形的示例代码

    1. 思路 怎么用CSS3画一个带阴影的三角形呢 ? 有童鞋说, 这还不简单吗 网上有很多解决方案, 但其实大多都是实现不太完美的, 存在一些问题 假设我们做一个向下的三角形箭头 常见的方法大致有两种 ...

  2. Directx11教程(10) 画一个简易坐标轴

    原文:Directx11教程(10) 画一个简易坐标轴       本篇教程中,我们将在三维场景中,画一个简易的坐标轴,分别用红.绿.蓝三种颜色表示x,y,z轴的正向坐标轴. 为此,我们要先建立一个A ...

  3. D3.js(v3)+react 制作 一个带坐标轴与比例尺的折线图

    本章使用路径生成器来绘制一个折线图.以中国和日本的GDP数据为例:   //数据 var dataList = [ { coountry : "china", gdp : [ [2 ...

  4. 【 D3.js 入门系列 --- 5.1 】 做一个带坐标轴和标签的图表

    前面几节讲解了图标.坐标轴.比例等等,这一节整合这些内容做一个实用的图表.结果图如下: 代码如下所示: <html> <head> <meta charset=" ...

  5. Python画一个四点连线并计算首尾距离

    import turtle import math #先定义4个坐标 x1,y1=100,100 x2,y2=100,-100 x3,y3=-100,-100 x4,y4=-100,100   #然后 ...

  6. 新学python画一个爱心

    from turtle import * def curvemove(): for i in range(200): right(1) forward(1) color('yellow','red') ...

  7. 如何用Python画一个圣诞树呢?

    # ./sd.py * *** ***** ******* ********* |[root@bogon shengdan]# vim sd.py[root@bogon shengdan]# cat ...

  8. 用Python画一个八角形代码示例

    import turtle turtle.color("purple","yellow")   turtle.speed(1) turtle.fd(100) t ...

  9. 用PS画一个齿轮

    以前只会画圆画方,这没技术含量.今天学了一个稍难一点的,画一个齿轮.图形有圆也有方.以下描述如何画出来的. 一.打开PS准备一画布,画一矩形并且填充颜色. 二.编辑->自由变换(CTRL+T), ...

随机推荐

  1. ThinkPHP5.0源码学习之缓存Cache(一)

    一.文件 1.缓存配置文件:thinkphp\convention.php 2.缓存文件:thinkphp\library\think\Cache.php 3.驱动目录:thinkphp\librar ...

  2. Angular7.1.4+Typescript3.1框架学习(一)

    起因:学习ionic4之前先学习下angular+ts 以win10为开发平台:当前最新版本为angular7;根据官网资料做如下总结: 1. angular安装 前提:Node.js 的 8.x 或 ...

  3. 爬虫(九)scrapy框架简介和基础应用

    概要 scrapy框架介绍 环境安装 基础使用 一.什么是Scrapy? Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,非常出名,非常强悍.所谓的框架就是一个已经被集成了各种功能 ...

  4. 构建微服务:Spring boot 入门篇

    什么是Spring Boot Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而 ...

  5. awk shell

    作业一:整理博客,内容包含awk.变量.运算符.if多分支 awk   1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 2 ...

  6. mysql开启远程登陆(修改数据表和授权两种方法)

    一.确认防火墙没有阻止3306端口(一般服务器默认会屏蔽掉) windows防火墙例外设置方法 控制面板(右上角选择查看方式为大图标)---防火墙---高级设置---高级设置---出站规则---最右边 ...

  7. docker网络

    docker网络   Docker 允许通过外部访问容器或容器互联的方式来提供网络服务. 端口映射允许外部访问容器 --link 容器互联 容器桥接网络 .通过--link容器通信,给test2添加一 ...

  8. 关于基于LinphoneSDK通话项目开发中遇到的相关问题

    在之前小学期的项目开发当中,我们小组进行的是使用网上开源的LinphoneSDK来开发一款Android端的VOIP电话APP. 因为网上关于这个SDK在安卓端的开发文档相当少,所以我们只能根据少量的 ...

  9. canvas初体验

    利用画布,绘制随机大小,颜色,位置 方框<!DOCTYPE html> <html lang="en"> <head> <meta cha ...

  10. JDBC连接ORACLE的三种URL格式

    格式一: Oracle JDBC Thin using an SID jdbc:oracle:thin:@host:port:SID 例如: jdbc:oracle:thin:@localhost:1 ...