plt的color,marker, legend的位置设置

在Python的Matplotlib库中,用于图形绘制的plt(pyplot)模块提供了多种颜色选项。以下是一些常用的颜色及其对应的代码:

基础颜色缩写:

  • ‘b’:蓝色(blue)
  • ‘g’:绿色(green)
  • ‘r’:红色(red)
  • ‘c’:青色(cyan)
  • ‘m’:品红(magenta)
  • ‘y’:黄色(yellow)
  • ‘k’:黑色(black)
  • ‘w’:白色(white)

HTML颜色码

可以使用标准的HTML颜色码来指定颜色,例如:

  • '#FF0000':红色
  • '#00FF00':绿色
  • '#0000FF':蓝色

RGB元组

还可以使用RGB元组来指定颜色,元组中的每个元素都是在[0, 1]范围内的浮点数。例如:

  • (1, 0, 0):红色
  • (0, 1, 0):绿色
  • (0, 0, 1):蓝色

预定义颜色名称

Matplotlib也支持一些预定义的颜色名称,例如:

  • ‘blue’
  • ‘green’
  • ‘red’
  • ‘cyan’
  • ‘magenta’
  • ‘yellow’
  • ‘black’
  • ‘white’
  • ‘purple’
  • ‘orange’
  • ‘pink’ 等等。

透明度

除了上述的颜色选项之外,还可以通过alpha参数来调整颜色的透明度。alpha的值在0(完全透明)到1(完全不透明)之间。

这里提供一个简单的示例来展示不同的颜色选项:

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 100)

plt.plot(x, np.sin(x), color='b', label='blue')
plt.plot(x, np.sin(x-1), color='g', label='green')
plt.plot(x, np.sin(x-2), color='r', label='red')
plt.plot(x, np.sin(x-3), color='#FF00FF', label='HTML color code')
plt.plot(x, np.sin(x-4), color=(0.1, 0.2, 0.3), label='RGB tuple')
plt.plot(x, np.sin(x-5), color='purple', label='Predefined name')
plt.plot(x, np.sin(x-6), color='c', alpha=0.5, label='cyan with alpha')

plt.legend()
plt.show()

在这个示例中,我们使用了多种不同的颜色选项,并通过legend函数添加了图例以标明各线条的颜色。这样,您就能直观地了解到Matplotlib中颜色的多样性和灵活性。

散点图的marker形状

plt.scatter(risks, returns, facecolors=‘none’, edgecolors=color[i], linewidths=0.5, label=filename[i])使用这行代码可以画出空心散点图,但是我想画出来三角形,或者正方形,菱形等的散点图,要怎么弄

在Matplotlib的plt.scatter()函数中,通过设置marker参数可以改变散点图中点的形状。以下是一些常用的marker选项:

  • 'o':圆形(默认)
  • 's':正方形
  • 'D':菱形
  • 'd':较小的菱形
  • 'v':倒三角形
  • '^':上三角形
  • '<':左三角形
  • '>':右三角形
  • 'p':五角形
  • 'h':六边形1
  • 'H':六边形2
  • '+':加号
  • 'x':乘号

示例代码

以下是一个例子,展示如何绘制不同形状和颜色的散点图:

import matplotlib.pyplot as plt
import numpy as np

# 模拟一些数据
risks = np.random.rand(10)
returns = np.random.rand(10)
filenames = ['file1', 'file2']

# 循环绘制不同形状和颜色的散点图
shapes = ['o', 's', '^']  # 圆形,正方形,上三角形
colors = ['r', 'g', 'b']  # 红色,绿色,蓝色

for i, shape in enumerate(shapes):
    plt.scatter(risks, returns, facecolors='none', edgecolors=colors[i], marker=shape, linewidths=0.5, label=filenames[i % len(filenames)])

# 添加图例
plt.legend()

# 显示图表
plt.show()

通过修改marker参数,您可以轻松地改变散点图中点的形状,从而满足您的具体需求。

设置图例legend的位置

在Matplotlib中,可以通过设置legend函数的loc参数来调整图例的位置。loc参数接受不同的字符串或数字值来确定图例的具体位置。如果你想将图例放置在图的右下角,可以使用loc='lower right'

示例代码:

import matplotlib.pyplot as plt
import numpy as np

# 模拟一些数据
risks = np.random.rand(10)
returns = np.random.rand(10)
filenames = ['file1', 'file2']

# 循环绘制不同形状和颜色的散点图
shapes = ['o', 's', '^']  # 圆形,正方形,上三角形
colors = ['r', 'g', 'b']  # 红色,绿色,蓝色

for i, shape in enumerate(shapes):
    plt.scatter(risks, returns, facecolors='none', edgecolors=colors[i], marker=shape, linewidths=0.5, label=filenames[i % len(filenames)])

# 添加图例,并设置其位置在右下角
plt.legend(loc='lower right')

# 显示图表
plt.show()

你可能感兴趣的:(plt)