我想根据y轴上的数据集,在图中对这条线进行着色。
if data > 0:
color = 'r'
if data = 0:
color = 'g'
if data < 0:
color = 'b'
不幸的是,我只知道如何为整个数据集着色一种颜色。我在网上也找不到任何东西。我假设有一种方法可以做到这一点,而不破坏每次颜色变化的数据集。
下面是一个仅用一种颜色绘制数据的示例。
import matplotlib.pyplot as plt
import numpy as np
# Simple data
x = np.l
我想知道matplotlib中是否有一个选项可以让一张图上有不同的颜色。到目前为止,我设计了一个特定颜色的图形,以及不同颜色的多个图形。 然而,到目前为止,我创建的所有图表都有一种单一的颜色。我想知道我是否可以使用c列(见下文)来给图形的不同部分着色。 在本例中,我希望使用索引为1的列c中的值"0.1“为第一个数据点到第二个数据点的图形着色,使用索引为2的列c中的值"0.2”为第二个到第三个数据点的图形着色,依此类推。 data for one graph:
index x y z c
1 1 2 1 0.1
2 1 2 2 0.2
3
在下面的代码中,我根据顶点着色规则为节点分配了颜色(作为数字值,而不是颜色名称)。随后,我绘制图表并显示颜色。最后,我将相关的数字颜色打印到节点。然而,我想要实际打印的颜色的“名称”,是显示在情节中。如何将颜色编号转换为颜色名称?
基于顶点着色规则为节点分配颜色
%matplotlib inline
import networkx as nx
import matplotlib.pyplot as plt
import numpy as np
# get the maximum vertex degree
max_deg = max(G.degree())
max_deg = max_deg
我正在尝试使用matplotlib中3D表面绘图的色彩映射表功能,根据来自另一个数组的值而不是z值来给表面着色。曲面图的创建和显示如下所示:
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
def gauss(x, y, w_0):
r = np.sqrt(x**2 + y**2)
return np.exp(-2*r**2 / w_0**2)
x = np.linspace(-100, 100, 100)
y = np.linspace(
我正在用python中的matplotlib绘制一个散点图。我想根据某些功能对点进行着色,如下所示:
import matplotlib.pyplot as plt
def color(x, y):
# based on some rules, return a color
if(condition):
return 'red'
else:
return 'blue'
plt.scatter(index, data) #c= something?
我知道matplotlib.from_levels_an
我使用matplotlib来绘制如下所示的条形图:
from matplotlib import pyplot as plt
x = ('sample1', 'sample2', 'sample3')
y = (-1, 0, 1)
plt.bar(x,y)
现在,我想循环遍历图定义,为x中的每一项生成一个新的图,并对相应的x条进行不同的着色,以在每个图中强调它。这将生成一个以“sample1”表示的红色图(所有其他条形图),以及另一个以红色表示“sample2”图(所有其他条形图),等等。
color可以设置为plt.bar()的一个参数,但它
我有一个小库来绘制不同方法的各种比较图(想想机器学习方法)。由于不同情节的一致性原因,同样的方法总是有相同的颜色。现在,对于一幅图,我想更改分层的顺序--只使用,同时保持颜色不变。到目前为止,着色和分层是通过在代码中调用它的简单顺序完成的。
因为我想更改分层的顺序,而不是只对一个图进行着色,所以我不想遍历所有的绘图函数并定义z_order和hue_order。
那我怎么能做到这一点呢?看看下面的例子,我希望蓝线在橙色线之上,而类型A仍然是蓝色,B类型仍然是橙色。
import matplotlib.pyplot as plt
import seaborn as sns
import panda