Matplotlib极坐标投影扰乱数据顺序(Excel绘图正确)

时间:2018-06-03 22:21:16

标签: python matplotlib polar-coordinates

我试图使用Matplotlib极坐标投影绘制LiDAR迹线。似乎极坐标投影以随机顺序扰乱我的数据点。这就是我所拥有的。

private void btnAlterar_Click(object sender, EventArgs e)
{    
    try
    {
        string strincon = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\flavi\Desktop\Pet&Shop.2\PetShop\TelaAbertura\bin\Debug\DatabasePS.mdb;Persist Security Info=True";

        OleDbConnection con = new OleDbConnection(strincon);
        con.Open();

        String comando = "UPDATE Funcionario SET Nome= '" + txtNome.Text + "' , Login= '" + txtLogin.Text + "' , Senha= '" + txtSenha.Text + "', Email= '" + txtEmail.Text + "' , Cargo= '" + txtCargo.Text + "' WHERE Codigo =" + codigo;

        OleDbCommand cmd = new OleDbCommand(comando, con);

        cmd.ExecuteNonQuery();

        MessageBox.Show("Dados Alterados Com Sucesso!");

        txtCargo.Clear();
        txtEmail.Clear();
        txtLogin.Clear();
        txtNome.Clear();
        txtSenha.Clear();

        con.Close();
    }
    catch (Exception erro)
    {
         MessageBox.Show(erro.Message);
    }
}

数据在哪里:

ax = plt.subplot(111, projection='polar')
ax.set_rmax(5000)
ax.plot(lidar_bins, lidar_field)
plt.show()

这是结果图。 matplotlib graph

但是,如果我在Excel中绘制完全相同的数据,我会得到一个非常合理的图表。

excel graph

1 个答案:

答案 0 :(得分:0)

matplotlib中的极坐标图要求theta坐标为radiants。

使用

import matplotlib.pyplot as plt
import numpy as np

ax = plt.subplot(111, projection='polar')
ax.set_rmax(5000)
ax.plot(np.deg2rad(lidar_bins), lidar_field)
plt.show()

enter image description here