Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >超简单,史密斯图绘制方法大公开!!

超简单,史密斯图绘制方法大公开!!

作者头像
DataCharm
发布于 2022-10-25 02:08:25
发布于 2022-10-25 02:08:25
3.3K16
代码可运行
举报
运行总次数:6
代码可运行

今天小编给大家推荐一个绘制史密斯圆图(Smith Chart) 超方便的工具-pySmithPlot,详细介绍如下:

pySmithPlot库介绍

pySmithPlot库可通过如下方式进行安装:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
pip install pysmithplot-fork

即可完成安装,但需要注意的是,安装后在绘制图表会出现错误:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
'numpy.float64' object cannot be interpreted as an integer

通过修改如下语句即可:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#修改smithaxes.py文件的1064行如下:
for xs in np.linspace(x0, x1, int(x_div + 1))[1:]:
#1068行如下:
for ys in np.linspace(y0, y1, int(y_div + 1))[1:]:

以上即可完成该库的完全安装。

pySmithPlot库案例

  • 案例:
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import numpy as np
import pandas as pd
from smithplot import SmithAxes

data = np.loadtxt("data/s11.csv", delimiter=",", skiprows=1)[::100]
val1 = data[:, 1] + data[:, 2] * 1j
data = np.loadtxt("data/s22.csv", delimiter=",", skiprows=1)[::100]
val2 = data[:, 1] + data[:, 2] * 1j

from matplotlib import rcParams
import matplotlib.pyplot as pp
rcParams.update({"legend.numpoints": 3})
rcParams["font.family"] = "Times New Roman"
# plot data
pp.figure(figsize=(6, 6),dpi=100,facecolor="w")
ax = pp.subplot(1, 1, 1, projection='smith')
pp.plot([10, 100], markevery=1)


pp.plot(200 + 100j, datatype=SmithAxes.Z_PARAMETER)
pp.plot(50 * val1, label="default", datatype=SmithAxes.Z_PARAMETER)
pp.plot(50 * val2, markevery=1, label="interpolate=3", interpolate=3, datatype=SmithAxes.Z_PARAMETER)
pp.plot(val1, markevery=1, label="equipoints=22", equipoints=22, datatype=SmithAxes.S_PARAMETER)
pp.plot(val2, markevery=3, label="equipoints=22, \nmarkevery=3", equipoints=22, datatype=SmithAxes.S_PARAMETER)

leg = pp.legend(loc="lower right", fontsize=12)
pp.title("Matplotlib Smith Chart Projection")

Example Of pySmithPlot

当然还可以绘制如下样例:

更多关于pySmithPlot库的介绍可参考:pySmithPlot介绍[1]

此外,plotly库也可以绘制史密斯图,样例如下:

详细绘制代码可参考:plotly 史密斯图绘制[2]

总结

今天这篇推文简单介绍史密斯图(smith-charts) 的绘制方法,希望对大家有所帮助。

参考资料

[1]

pySmithPlot: https://github.com/vMeijin/pySmithPlot。

[2]

smith-charts in plotly: https://plotly.com/python/smith-charts/。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-05-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 DataCharm 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
1 条评论
热度
最新
有没有大佬在vue中弄出这个图
有没有大佬在vue中弄出这个图
回复回复点赞举报
推荐阅读
编辑精选文章
换一批
NumPy Beginner's Guide 2e 带注释源码 七、NumPy 特殊例程
假设现在存入pv元钱(正),之后就不存了,年利率为rate,n年之后余额是pv * (1 + rate) ** n。
ApacheCN_飞龙
2019/02/15
4430
NumPy Beginner's Guide 2e 带注释源码 七、NumPy 特殊例程
Python中的3D绘图命令~放到论文或PPT里太加分了
比如在下面的几张动图中,使用matplotlib中的三维显示命令,使得我们可以对于logistic回归网络的性能与相关参数有了更好的理解。
润森
2022/09/22
8850
Python中的3D绘图命令~放到论文或PPT里太加分了
科学计算:Python 分析数据找问题,并图形化
本文将介绍 numpy, matplotlib, pandas, scipy 几个包,进行数据分析、与图形化。
GoCoding
2021/05/06
6850
科学计算:Python 分析数据找问题,并图形化
Python可视化 | 风玫瑰图可视化示例
https://github.com/python-windrose/windrose pip install windrose pip install git+https://github.com/python-windrose/windrose git clone https://github.com/python-windrose/windrose python setup.py install from windrose import WindroseAxes from matplotlib im
郭好奇同学
2020/12/22
2.9K0
Python可视化 | 风玫瑰图可视化示例
Python可视化 | 微波辐射计数据处理及可视化
这里先展示一下如何画微波辐射计的湿度时间剖面图吧。这个图只画了70%-100%范围,填色+等值线,用蓝绿色系,间隔为2,并且湿度越大,颜色越深。
郭好奇同学
2021/03/25
1.5K0
Python可视化 | 微波辐射计数据处理及可视化
【python图像处理】python绘制
3D图形在数据分析、数据建模、图形和图像处理等领域中都有着广泛的应用,下面将给大家介绍一下如何使用python进行3D图形的绘制,包括3D散点、3D表面、3D轮廓、3D直线(曲线)以及3D文字等的绘制。
py3study
2020/01/10
1.6K0
【python图像处理】python绘制
Python 数据科学入门教程:Matplotlib
欢迎阅读 Python 3+ Matplotlib 系列教程。 在本系列中,我们将涉及 Matplotlib 数据可视化模块的多个方面。 Matplotlib 能够创建多数类型的图表,如条形图,散点图,条形图,饼图,堆叠图,3D 图和地图图表。
ApacheCN_飞龙
2022/12/01
2.4K0
Python 数据科学入门教程:Matplotlib
【中秋节快乐】Matplotlib:3d绘图合集
https://blog.csdn.net/m0_63834988/category_12441299.html
Qomolangma
2024/07/30
2200
【中秋节快乐】Matplotlib:3d绘图合集
Python可视化 | 绘制研究区域DEM地形图
在往期推文中,我们曾利用nc地形数据、tif地形数据及png非矢量图等绘制过研究区域DEM地形图,在此不再累述,请感兴趣者在往期推文中自行检索源代码(无脑替换数据即可)。本文则是从全局1分钟网格中以ASCII XYZ格式提取DEM地形数据并绘图:
郭好奇同学
2021/05/28
4.9K1
Python可视化 | 绘制研究区域DEM地形图
Python实现线性插值、抛物插值、样条插值、拉格朗日插值、牛顿插值、埃米尔特插值
今天给大家介绍7种插值方法:线性插值、抛物插值、多项式插值、样条插值、拉格朗日插值、牛顿插值、Hermite插值,并提供Python实现案例。
皮大大
2024/06/14
3.8K0
使用Python绘制与定制3D曲面图全面指南
在数据可视化的世界中,3D曲面图是一种强大的工具,能够将复杂的数据模式以清晰直观的方式展现出来。Python提供了多种库和工具,使得创建和定制3D曲面图变得简单而令人兴奋。本文将介绍如何使用Python中的Matplotlib和mpl_toolkits.mplot3d库绘制令人印象深刻的3D曲面图。
一键难忘
2024/06/23
7000
python底层的逻辑回归
python底层的逻辑算法: 回归:回归是统计学的一个重要概念,其本意是根据之前的数据预测一个准确的输出值。 逻辑回归是《机器学习》这门课的第三个算法,它是目前使用最为广泛的一种学习算法,用于解决分类问题。与线性回归算法一样,也是监督学习算法。 诸如:新闻分类、基因序列、市场划分等的一些根据特征划分的,用的都是逻辑回归。 输出的最终预测结果为:正向类(1)、负向类(0)。
用户7886150
2020/11/27
7050
Python绘制地图专用库(Cartopy)
地图绘制 大家在绘制栅格地图的时候有可能还在使用ArcGIS进行出图,但是ArcGIS出图比较慢,而且批量出图的时候又比较麻烦。 今天给大家介绍一个Python中用于地图绘制的库,Cartopy,这个库跟basemap非常相似,不过basemap现在已经不再更新。所以大家使用Python绘制地图还是使用Cartopy比较好。 Cartopy简介 Cartopy是一个Python软件包,用于地理空间数据处理,以便生成地图和其他地理空间数据分析。 网址:https://scitools.org.uk/carto
GIS与遥感开发平台
2022/04/29
2.7K0
Python绘制地图专用库(Cartopy)
Matplotlib绘制的27个常用图(附对应代码实现)
https://nbviewer.jupyter.org/github/matplotlib/AnatomyOfMatplotlib/blob/master/AnatomyOfMatplotlib-Part2-Plotting_Methods_Overview.ipynb
生信宝典
2019/11/22
1.1K0
数据科学家极力推荐核心计算工具-Numpy的前世今生(下)
----------------------------------------------------------------------------------------
Python编程爱好者
2020/09/24
8680
数据科学家极力推荐核心计算工具-Numpy的前世今生(下)
Python学习笔记之Matplotlib模块入门(直线图、折线图、曲线图、散点图、柱状图、饼状图、直方图、等高线图和三维图的绘制)
Matplotlib 是一个Python的 2D绘图库。通过 Matplotlib,开发者可以仅需要几行代码,便可以生成绘图,直方图,功率谱,条形图,错误图,散点图等。 通过学习Matplotlib,可让数据可视化,更直观的真实给用户。使数据更加客观、更具有说服力。 Matplotlib是Python的库,又是开发中常用的库。
爱喝兽奶的熊孩子
2024/04/10
15.6K0
Python学习笔记之Matplotlib模块入门(直线图、折线图、曲线图、散点图、柱状图、饼状图、直方图、等高线图和三维图的绘制)
基于Matplotlib的高级数据可视化技术与实践探索
文章链接:https://cloud.tencent.com/developer/article/2466769
一键难忘
2024/11/21
3550
python中一些数据处理库
Numpy是Python的一个很重要的第三方库,很多其他科学计算的第三方库都是以Numpy为基础建立的。Numpy的一个重要特性是它的数组计算。
用户7886150
2021/01/05
9150
Python可视化 | 中尺度对流系统反射率截面
中尺度对流系统,简称MCS(Mesoscale Convective System),是造成暴雨 、冰雹 、雷雨大风和龙卷等灾害性天气的重要系统。
郭好奇同学
2021/08/26
1.1K0
Python可视化 | 中尺度对流系统反射率截面
python之Numpy 输入与输出
save()、savez()和load()函数以 numpy 专用的二进制类型(npy、npz)保存和读取数据,这三个函数会自动处理ndim、dtype、shape等信息,使用它们读写数组非常方便,但是save()输出的文件很难与其它语言编写的程序兼容。 npy格式:以二进制的方式存储文件,在二进制文件第一行以文本形式保存了数据的元信息(ndim,dtype,shape等),可以用二进制工具查看内容。 npz格式:以压缩打包的方式存储文件,可以用压缩软件解压。
用户7886150
2021/01/05
8310
推荐阅读
相关推荐
NumPy Beginner's Guide 2e 带注释源码 七、NumPy 特殊例程
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档