zoukankan      html  css  js  c++  java
  • 使用Python画一个带坐标轴的圆

    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

    Choose Python development

    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.
      Install matplotlib
    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:
      Plot the figure for the first time

    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:
      Customized the ticks and axis
    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.

    A circle plot with python

  • 相关阅读:
    javaHTTP请求工具类-使用HttpURLConnection实现
    windows 无法启动redis 服务(位于本地计算机上)错误1053 服务没有及时响应启动或控制请求
    Redis 教程
    谢娜离开《快本》103天,暴露了芒果一姐的假相:有一种天真,叫错把平台当本事
    Api 在线文档目录:java8 中文、java11中文
    Linux关闭防火墙命令red hat/CentOs7
    Win10使用RedisDesktopManager工具连接虚拟机(CentOS 7)Redis
    如何win10 上访问虚拟机(linux)上redis方法
    汽车车牌JS正则表达式验证(含新能源车牌)
    vue 直接输入路由地址进入_vue地址栏直接输入路由无效问题
  • 原文地址:https://www.cnblogs.com/qixue/p/8318059.html
Copyright © 2011-2022 走看看