python中plt.scatter如何使用除c=‘b’之外的办法调整颜色?
我发现可以使用如plt.scatter(result[:,0],result[:,1],,c=(1,0,1))这种办法,但是c=(1,0,1)并不是我想要的,因为我在前面...
我发现可以使用如plt.scatter(result[:,0], result[:,1],,c=(1,0,1))这种办法,但是c=(1,0,1)并不是我想要的,因为我在前面用QPalette弄出了 形如(255,145,43)这种格式的颜色,但是这个无法放在c里面直接用,肯定是需要转化一下!
非常着急,希望能给指点下啊
(不太懂python,都是拼接别人的程序)
我附上代码了:
import numpy as np
import matplotlib.pyplot as plt
from PyQt4.QtGui import *
from PyQt4.QtCore import *
import sys
#from . import textbox
# Generate N x D matrix of uniform [0, 1] samples
def sample(N, D, plot = True):
def openColor():
c=QColorDialog.getColor(Qt.red)
msg = (c.red(),c.yellow(),c.blue())
print msg
return msg
result = np.random.random([N, D])
if plot:
plt.figure()
ax = plt.subplot(axisbg=(1,1,1))
mark = ['*']
col=openColor() # 这里可以print出看到col是形如(255,255,255)的样子
plt.scatter(result[:,0], result[:,1],marker = mark[0],c=(怎么写?直接写成col不行),s=100)
ax.set_xlim(0,1)
ax.set_ylim(0,1)
plt.title('Monte Carlo Sampling')
plt.show()
return result
我不太懂python,都是拼接别人的程序,希望指导! 展开
非常着急,希望能给指点下啊
(不太懂python,都是拼接别人的程序)
我附上代码了:
import numpy as np
import matplotlib.pyplot as plt
from PyQt4.QtGui import *
from PyQt4.QtCore import *
import sys
#from . import textbox
# Generate N x D matrix of uniform [0, 1] samples
def sample(N, D, plot = True):
def openColor():
c=QColorDialog.getColor(Qt.red)
msg = (c.red(),c.yellow(),c.blue())
print msg
return msg
result = np.random.random([N, D])
if plot:
plt.figure()
ax = plt.subplot(axisbg=(1,1,1))
mark = ['*']
col=openColor() # 这里可以print出看到col是形如(255,255,255)的样子
plt.scatter(result[:,0], result[:,1],marker = mark[0],c=(怎么写?直接写成col不行),s=100)
ax.set_xlim(0,1)
ax.set_ylim(0,1)
plt.title('Monte Carlo Sampling')
plt.show()
return result
我不太懂python,都是拼接别人的程序,希望指导! 展开
2个回答
展开全部
看了一下scatter支持的颜色是这样的,例如:plt.scatter(x1, y1, c='b', marker='o', s=5) ,你试试
character color
‘b’ blue
‘g’ green
‘r’ red
‘c’ cyan
‘m’ magenta
‘y’ yellow
‘k’ black
‘w’ white
character color
‘b’ blue
‘g’ green
‘r’ red
‘c’ cyan
‘m’ magenta
‘y’ yellow
‘k’ black
‘w’ white
追问
是是,这样的我明白,但你可否帮我看下我说的那个样子,比如你使用形如c=(0,0,0)的样子也行的通,这是为啥??
求问
追答
你看一下这个里面的说明:http://matplotlib.org/api/colors_api.html
我英语不太好,你看看是不是说color = '#eeefff'这种方式也可以
展开全部
参见http://matplotlib.org/api/colors_api.html
plt.scatter的c接受(r,g,b)形式的值只限于里面每个值都小于1的情况,即r<1,g<1,b<1
大的值,(255,145,43),可以如下转换:
hex(255)=0xff,hex(145)=0x91,hex(43)=0x2b,
所以(255,145,43)对应的颜色是#ff912b
c='#ff912b'
plt.scatter的c接受(r,g,b)形式的值只限于里面每个值都小于1的情况,即r<1,g<1,b<1
大的值,(255,145,43),可以如下转换:
hex(255)=0xff,hex(145)=0x91,hex(43)=0x2b,
所以(255,145,43)对应的颜色是#ff912b
c='#ff912b'
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询