有哪些用于Perl的图形包/API?
我正在对不同语言的在线图形包进行一些研究,并想知道当前最新的图形包适用于Perl,值得研究 最低期望的功能应包括Google通过将对推荐包装/API的主要好处进行简短概述 解决方案 我一直在与其他解决方案 您可能会找到此类似问题的答案,有助于如何在Windows上的Perl中创建图形? 如果是基于网络的,那么我确实喜欢使用基于闪存的图表.我已经使用了 open flash图表2 模块对于良好的商业闪存图表,请看一下对于非闪存商业替代方案,请查看其他解决方案 用于在perl中绘制,我已经使用了 gd 和 gd :: graph 模块. GD :: Graph可以产生简单的条,线和饼图,并输出几种图形格式,包括PNG.
0 2023-05-24
编程技术问答社区
使用PANDAS DataFrames Data Python创建堆叠的直方图
我正在尝试创建一个带有来自2个或更多不均匀PANDAS数据范围的数据的堆叠直方图?到目前为止 import pandas as pd import matplotlib.pyplot as plt df = pd.read_csv('dert.csv', encoding = "ISO-8859-1", index_col=0) df1['text'] = df['text'].dropna(subset=['five']) df2['printed'] = df['text2'] ax = df1['text'].hist( bins=100, range=(1,100), stacked=True, color = 'r') ax = df2['printed'].hist(bins=100, range=(1,100), stacked=True, color = 'g') plt.setp(ax.get_xticklabels(), rotation=45) plt.s
0 2023-05-17
编程技术问答社区
查找二次和线之间的相交
我试图找到直线和二次曲线之间的相交,但是我得到的结果似乎是虚构的,尽管我看不出是什么情况: Import numpy #quadratic coefficients a,b,c = (-3.09363812e-04, 1.52138019e+03, -1.87044961e+09) # y = ax^2 + bx + c #line coefficients m,d = (1.06446434e-03, -2.61660911e+03) #y = mx + d intersect = (-(b-m)+((b-m)**2 - 4*a*(c-d))**0.5)/(2*a) print(intersect) 输出是2458883.4674949495-107.95731226786134J 我试图在蓝点上的黄色曲线和黑色虚线 之间找到相交 解决方案 您呈现的图形曲线与方程式不同,方程式不相交. 我为您重写了一些示例代码. numpy不需要,
16 2023-05-02
编程技术问答社区
python 2.7 mac osx中使用matplotlib进行交互式绘图时不工作
来自在这里我找到了此代码: import random from matplotlib import pyplot as plt import numpy as np plt.ion() # interactive mode ydata = [0] * 50 # make plot ax1 = plt.axes() line, = plt.plot(ydata) plt.ylim([0, 100]) # set the y-range while True: randint = int(random.random() * 100) ymin = float(min(ydata)) - 10 ymax = float(max(ydata)) + 10 plt.ylim([ymin,ymax]) ydata.append(randint) del ydata[0] line.set_xdata(np.arange(len
10 2023-05-02
编程技术问答社区
不能让小网格线出现在matplotlib图中
好,所以我有以下代码用于实时绘制从串行中接收到的嵌入式设备的一些数据.这并不是要成为生产工具,而是一种内部英语工具,因此它并不是非常友好的.问题在于,无论我做什么,即使在这里设置为True, which=both,我也无法出现小小的网格线.我可以在主要网格线上做任何我想做的事情,但未成年人不会出现.有任何想法吗?这是代码: import numpy as np from matplotlib import pyplot as plt from matplotlib import animation import serial SERIAL_PORT_NUM=9 ...a bunch of constants... #windows starts serial port numbers at 1, python starts at 0 SERIAL_PORT_NUM = SERIAL_PORT_NUM - 1 """ Open the serial port """ ser =s
2 2023-04-30
编程技术问答社区
Matplotlib的对数比例勾选标签数字格式化
使用matplotlib指定对轴的日志刻度时,默认的标记轴的默认方法是轴的数字为10到功率,例如. 10^6.是否有一种简单的方法可以将所有这些标签更改为它们的完整数值表示形式?例如. 1、10、100等 请注意,我不知道要支持任意范围的权力范围(包括负面因素). 解决方案 当然,只需更改格式. 例如,如果我们有此图: import matplotlib.pyplot as plt fig, ax = plt.subplots() ax.axis([1, 10000, 1, 100000]) ax.loglog() plt.show() 您可以手动设置tick标签,但是当您缩放/pan/等时,将修复刻度位置和标签.因此,最好更改格式化器.默认情况下,对数量表使用LogFormatter,它将以科学符号的形式格式化值.要将格式化器更改为线性轴的默认值(ScalarFormatter),例如. from matplotlib.ticker import
6 2023-04-30
编程技术问答社区
我如何在RRDtool中创建累计带宽使用量(即每月的GB's下降)?
以下数据来自手机提供商,它是在特定时间下载的KB列表,通常是每分钟. 不是平均值,不是最大的时间间隔,而是允许精确跟踪数据消耗的时间间隔.这些图是用PIL制成的,而不是显示尖峰以表明大量数据消耗,而是可以看到大步,这更揭示了,因为它不仅说"在这里发生了很多事情",而且还发生了很多事情.这里".例如,第二张图100MB晚上10个SAT.速率变化的图不会那么有用. 我也试图找到一种使用RRD的方法. 当使用计数器跟踪我的网络数据使用情况时,我被误导了,以为我能够精确计算每月/每周的累计数据使用情况,但是现在事实证明这是一个错误的假设. > 我如何将数据存储在RRD中,以便能够轻松地生成如下图的图形?这是通过使用绝对和更新之前,我会减去先前的插入值?在检查每月使用情况时,这会确切地归结为字节吗? 解决方案 您可以很容易地将图表中的所有值添加: CDEF:sum=data,$step_width,*,PREV,ADDNAN 如果您的图表仅涵盖一个月,
4 2023-04-21
编程技术问答社区
ggpplot2中的R绘图filled.contour()输出
我想绘制使用filt.contour()创建的这个数字,但是在ggplot2中,我该怎么做? 我想使用ggplot2,因为图形约定更容易.我要使用fill.contour()的原因是因为我尝试了geom_tile()和image.plot(),并且它们都像输出一样创建了非常瓷砖,并且我需要一个类似于filt.contour.contour()的输出. 这是我的数字: 代码: library(akima) df
40 2023-03-30
编程技术问答社区
matplotlib:在循环中绘制多个单独的图
我想绘制多个基准测试,每个基准都在单独的图上.这是我的代码: for benchmark in benchmarks: readFile = open(benchmark+'.txt') text = readFile.read() x = re.findall(r"(\d+)",text) x = [int(i) for i in liveRatio] pylab.plot(x) F = pylab.gcf() F.savefig('benchmark',dpi=200) 代码将所有数据绘制在同一图上.但是,我想要每个基准的单独单独的图. 解决方案 您需要在每个情节调用之前清除图: for benchmark in benchmarks: readFile = open(benchmark+'.txt') text = readFile.read() x = re.findall(r"(\d+)",te
22 2023-03-22
编程技术问答社区
忽略大于x分钟的时间间隔 Python中的Matplotlib
我在上午9:30至下午4点之间每5分钟获取数据.大多数日子,我只是绘制现场日内数据.但是,有时候我想对Lets说2天以上的历史观点.唯一的问题是,在下午4点和9:30,我只需连接两个数据点的线路.我希望这个差距消失.我的代码和正在发生的事情的示例在下面; fig = plt.figure() plt.ylabel('Bps') plt.xlabel('Date/Time') plt.title(ticker) ax = fig.add_subplot(111) myFmt = mdates.DateFormatter('%m/%d %I:%M') ax.xaxis.set_major_formatter(myFmt) line, = ax.plot(data['Date_Time'],data['Y'],'b-') 我想将数据保留为时间序列,以便当我滚动时,我可以看到确切的日期和时间. 解决方案 因此,看起来您正在使用Pandas对象,这很有帮助.假设您在data['D
0 2023-03-22
编程技术问答社区
matplotlib中的轴数值偏移
我正在用matplotlib绘制一些东西,看起来像这样: 我似乎无法弄清楚为什么X轴像它一样偏移了……看起来在说:"无论您从我看,无论我从我看过什么,添加2.398e9添加到它的实际x值'. 这不是我想要的...我可以让它只占据前4位数字吗? 这是代表频率,所以我想看看读取的内容: 2000或2400或2800 ....我可以在轴标题中添加" MHz"部分...但是,这是不可读的. 这是因为它试图决定如何截断长数据吗? 这是绘图的代码: plt.title(file_name +' at frequency '+ freq + 'MHz') plt.xlabel('Frequency') plt.ylabel('Conducted Power (dBm)') plt.grid(True) plt.plot(data['x'],data['y']) #plt.axis([min(data['x']),max(data['x']),min(data['y
6 2023-03-22
编程技术问答社区
与sns.barplot一起绘图表
#read data into dataframe con=pd.read_csv('testOutput.csv') ''' testOutput.csv looks like : Sample,Count sample1,99.9 sample2, 96.6 ''' ## set colours to increase with values sns.set(style="darkgrid") groupedvalues=con.groupby("Count").sum().reset_index() pal = sns.color_palette("Greens_d", len(groupedvalues)) rank = groupedvalues["Count"].argsort().argsort() #get summary stats of data summary=pd.DataFrame(con['Count'].describe()) #set limits
42 2023-03-21
编程技术问答社区
纸张尺寸
如何仅更改Yaxis标签的大小? 现在,我使用 更改所有标签的大小 pylab.rc('font', family='serif', size=40) 但就我而言,我想使y轴标签比x轴大.但是,我想独自留下tick标签. 我尝试过,例如: pylab.gca().get_ylabel().set_fontsize(60) ,但我只得到: AttributeError: 'str' object has no attribute 'set_fontsize' 所以,显然这行不通.我看过很多滴答尺寸的东西,但没有轴线标签本身. 解决方案 如果您使用的是" pylab"进行交互式绘图,则可以在创建时间设置pylab.ylabel('Example', fontsize=40)> 的标签. 如果您可以通过编程方式使用pyplot可以使用ax.set_ylabel('Example', fontsize=40)或之后的ax.yaxis.label.
2 2023-03-21
编程技术问答社区
在python中使用插图图创建一个图下面的子图
我目前已附加了图.我想要在这张图下方的单独图表显示两条线之间的差异,以直观地显示出误差分析的功能方法. 如何在此图下面添加一个带有空间和新轴的子图,而不会影响我当前图的大小和形状. 我当前的代码是: fig, ax = plt.subplots() plt.plot(x, y1, label = 'label1') plt.plot(x, y2, label = 'label2') plt.plot(x, y3, label = 'label2') plt.xlabel(u'Redshift (z)', fontname = 'Times New Roman', size = 15) plt.ylabel(u'Look-back Time (yrs)', fontname = 'Times New Roman', size = 15) legend = plt.legend(loc='lower right', shadow=True, fontsize='larg
36 2023-03-21
编程技术问答社区
使用matplotlib imshow的选择性模式
有没有办法将自定义模式放置在Imshow图上的选定区域中?确切地说,我需要做到这一点,以便除了具有数值data的彩色正方形外,我在其他正方形中还具有不同的模式,这表明了实验的不同故障模式(还生成了一个键来解释这些含义的含义不同的模式).将有用的模式的一个示例是各种类型的交叉染料.我需要能够执行此操作,而不会破坏图表上的主要颜色数据关系. 以下是我尝试使用答案中建议的内容的代码.如果我评论错误部分,则在没有掩盖的数据的情况下,Imshow在空白空间中表现良好.我什至没有尝试为不同的故障类型进行不同类型的交叉捕捉或处理模拟或实验奏效的情况,但另一个尚未进行. edit3:我正在从多处理软件包中接收错误按摩,内容涉及该对象如何"无法腌制".由于程序,这是其中的一部分,涉及多处理软件包.有什么方法可以解决此问题或无需添加_patches(下面建议的绘图方法不起作用,因为绘图发生在完全不同的坐标系统上并绘制连接行)? import numpy as np import matpl
12 2023-03-21
编程技术问答社区
用Python中的TeX在matplotlib的标签上放换行?
如何在matplotlib中的情节标签(例如Xlabel或Ylabel)中添加新线?例如, plt.bar([1, 2], [4, 5]) plt.xlabel("My x label") plt.ylabel(r"My long label with $\Sigma_{C}$ math \n continues here") 理想情况下,我也希望Y标记也以中心为中心.有没有办法做到这一点?标签具有Tex(以" $'"为名和Newline. 很重要. 解决方案 您的示例正是完成的,您使用\n.您需要取下R前缀,但Python不将其视为RAW String 其他解决方案 您可以拥有两全其美的最好:乳胶命令的自动"逃脱" 和 newlines: plt.ylabel(r"My long label with unescaped {\LaTeX} $\Sigma_{C}$ math" "\n" # Newline: the backs
0 2023-03-21
编程技术问答社区
如何用sympy绘制点?
我需要计算和绘制一个函数,并且是前两个衍生物.然后,我需要在图表上绘制原始函数的最小值和最大点.我已经计算了这些,但是如何绘制数据丢失. 最小/最大点的X值为 criticalPoints[] y值为 criticalPointsY[] 这是出现错误的代码段. equation=CreateFunction(); firstDeriv=equation.diff(x); secondDeriv=firstDeriv.diff(x); print(equation); criticalPoints=solveset(firstDeriv,x); criticalPointsY=[]; for a in criticalPoints: criticalPointsY.append(equation.subs(x,a)); p=plot(equation,firstDeriv,secondDeriv,(x,-10,10)); # Nee
68 2023-03-21
编程技术问答社区
Matplotlib中的极地轮廓图
我有一组我想使用Matplotlib在极地坐标中产生轮廓图的数据. 我的数据如下: theta - 角度值的1D数组 radius - 半径值的1D数组 value - 我想用于轮廓的1D值数组 这些都是正确对齐的所有1D数组 - 例如: theta radius value 30 1 2.9 30 2 5.3 35 5 9.2 也就是说,所有值都重复了足够的时间,以使三个变量的"表"的每一行都定义了一个点. 如何从这些值中创建极性轮廓图?我已经考虑过将半径和theta值转换为x和y值并在笛卡尔坐标中进行操作,但是轮廓函数似乎需要2D数组,我不太了解为什么. 有什么想法? 解决方案 matplotlib的contour()函数期望将数据作为点的2D网格和每个网格点的值的相应网格排列.如果您的数据自然排列在网格中,则可以将r,theta转换为x,y并使用con
22 2023-03-21
编程技术问答社区
改变matplotlib线条风格的中图
我正在绘制一些数据(两行),我想更改它们之间差异具有统计学意义的线的线样式.因此,在下图中(现在是链接b/c反垃圾邮件策略不允许我发布图像),我希望行看起来与众不同(即可能破坏了),直到它们开始在约35上开始收敛于35 X轴. line Plot 有没有办法轻松执行此操作?我有X轴的值,其中差异很大,我只是不清楚如何在某些X轴位置更改线样式. 解决方案 编辑:我要开放和离开,所以我没有注意到 @ricardo的答案.因为Matplotlib无论如何都会将事物转换为Numpy阵列,所以有更有效的方法可以做到. 作为一个例子: 只是绘制两条不同的线条,一条带有虚线的线性,另一个带有坚实的线性. ,例如 import numpy as np import matplotlib.pyplot as plt x = np.linspace(0, 10, 100) y1 = 2 * x y2 = 3 * x xthresh = 4.5 diff = n
18 2023-03-21
编程技术问答社区
gnuplot vs Matplotlib
我已经开始使用一个项目图表 tomcat 使用 matplotlib 用于Python Graphing.我还没有听说过更好的图库吗? 我的一般考虑是: 虽然GNUPLOT有大量文档,但GNUPLOT-PY却没有. Matplotlib的文档社区有多好? gnuplot可以做的事情,但是gnuplot-py不能吗? matplotlib是否有更好的python支持? 是否有大型表演停止错误?烦恼? 当前GNUPLOT正在绘制100,000分的绘图,我计划将其扩展到数百万.我应该期待问题吗? matplotlib如何处理此操作? 易用性,gnuplot vs matplotlib的周转时间? 端口现有的gnuplot-py代码到matplotlib? 有多容易 您将如何处理此任务? 解决方案 您可以检查 matplotlib的文档您自己.我发现它非常全面. 我对gnuplot-py的经验很少,所以我不能说它是否可以做所有的gnuplot. mat
28 2023-03-21
编程技术问答社区