gpt4 book ai didi

python - 更改 GnuplotPy 直方图中的条形颜色?

转载 作者:太空宇宙 更新时间:2023-11-04 06:18:39 25 4
gpt4 key购买 nike

我正在使用 GnuplotPy 绘制一些直方图,我想更改直方图条的颜色。 (默认情况下,条形是红色的。)this StackOverflow post 中的答案。为如何在普通 Gnuplot 中更改直方图条形颜色提供了几个选项,但我无法让这些解决方案在 GnuplotPy 中工作。

这是我正在使用的基本设置:

import Gnuplot

gp = Gnuplot.Gnuplot(persist = 1)
gp('set ylabel "Accuracy"')
gp('set format x " "') #remove the auto-generated xtics labels
gp('set xtics scale 0') #remove xtic marks.
gp(r'set xtics add ("Method 1" 0.15) ("Method 2" 1.15)')
dataToPlot = [6.9, 47.6]

gp('set style data histograms')
gp('set style fill solid 1.0 border -1')
plot1 = Gnuplot.PlotItems.Data(dataToPlot)

gp.plot(plot1)
gp.hardcopy('hist_example.eps',terminal = 'postscript', enhanced=1, color=1) #must come after plot() function
gp.reset() #must be placed after hardcopy()

上面的代码没有尝试设置直方图条的颜色,而是生成了一个带有红色条的直方图:

enter image description here


我尝试了几种方法来将直方图条形颜色更改为蓝色,但都没有成功。

首先,遵循 mgilson 在 this thread 中的建议,我尝试添加以下行,但它抛出错误并且条形图仍然显示为红色:

gp('set style lc rgb "blue"') #throws this error: line 0: expecting 'data', 'function', 'line', 'fill' or 'arrow'

我还尝试对代码进行以下修改,但它抛出了一个错误而没有产生一个情节:

plot1 = Gnuplot.PlotItems.Data(dataToPlot, with_="linecolor rgb 'blue'")  #throws this error: plot "/var/folders/98/st7ct15n227g1p92mljkx93m0000gq/T/tmp875mRk.gnuplot/fifo" notitle with linecolor rgb 'blue' ^ line 0: expecting 'lines', 'points', 'linespoints', 'dots', 'impulses',    'yerrorbars', 'xerrorbars', 'xyerrorbars', 'steps', 'fsteps',   'histeps', 'filledcurves', 'boxes', 'boxerrorbars', 'boxxyerrorbars',   'vectors', 'financebars', 'candlesticks', 'errorlines', 'xerrorlines',  'yerrorlines', 'xyerrorlines', 'pm3d', 'labels', 'histograms',   'image', 'rgbimage'

那么,如何在 GnuplotPy 中更改直方图条的颜色?

最佳答案

另一种可能有效的 hack 是:

plot1 = Gnuplot.PlotItems.Data(dataToPlot, with_="histograms linecolor rgb 'blue'")

在我看来,gnuplot-py 应该允许这样的语法:

plot1 = Gnuplot.PlotItems.Data(dataToPlot, with_="histograms",linecolor="rgb 'blue'")

或类似的东西。我现在没有好的测试用例来试验......

关于python - 更改 GnuplotPy 直方图中的条形颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13850320/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com