python 绘制svg矢量图层

本文介绍使用Python进行数据可视化的过程,重点展示了如何利用matplotlib库绘制时间序列数据,并通过Adobe Illustrator进行SVG格式的渲染,以实现高质量的图表输出。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

# -*- coding: UTF-8 -*-
__author__ = 'zy'
__time__ = '2020/4/20 13:38'
import json
import time
import pandas as pd
import matplotlib
matplotlib.rcParams['backend'] = 'SVG'
import matplotlib.pyplot as plt
import pandas
import requests
import numpy as np
plt.rcParams['font.family'] = ['sans-serif']
plt.rcParams['font.sans-serif'] = ['SimHei']
 
df = pandas.read_csv('day_sen0.csv', engine='python', sep=',', encoding="utf_8_sig")
neg=df['neg'].values.tolist()
neu=df['neu'].values.tolist()
pos=df['pos'].values.tolist()
rate=df['rate'].values.tolist()
 
time_l=df['time'].values.tolist()
 
plt.plot(time_l, rate,'m.-.')  # plot在一个figure窗口中添加一个图,绘制曲线,默认颜色
# 绘制离散点
plt.plot(time_l, rate, '.y')  # 绘制黄色的点,为了和曲线颜色不一样
 
plt.plot(time_l, rate, 'om')  # 绘制紫红色的圆形的点
 
plt.plot(['2020/1/23', '2020/1/23'], [0.11, rate[time_l.index('2020/1/23')]], "--", color="g")
 
for x0, y0 in zip(time_l, rate):
    if x0=='2020/1/23':
        plt.annotate('label1', xy=(x0, y0), xytext=(x0, y0 +0.01), )  # 添加注释arrowprops=dict(arrowstyle='->')
        # plt.quiver(x0, y0 - 0.04, 0, 1, color='g', width=0.005)  # 绘制箭头
        plt.plot(x0, y0, 'or')
    if x0=='2020/2/10':
        plt.annotate('label2', xy=(x0, y0), xytext=(x0, y0 + 0.01))  # 添加注释
        plt.quiver(x0, y0 - 0.04, 0, 1, color='g', width=0.005)  # 绘制箭头
        plt.plot(x0, y0, 'or')
# x = range(2, 21, 5)
# y = np.log10(x) + 0.5
# xytext=(x0, y0 - 1),
 
# plt.annotate('Original point', xy=(2020/1/23, rate[time_l.index(2020/1/23)]),arrowprops=dict(arrowstyle='->'))
 
 
 
plt.xticks(list(time_l)[::6],time_l[::6],)
 
import pylab as pl
 
pl.xticks(rotation=45)
 
# plt.xlabel('date')
plt.ylabel('rate')
 
plt.legend()
 
print(df)
plt.savefig('1.png')
# plt.show()
 
plt.savefig('kankan.svg',format='svg')

python 绘制svg之后利用 Adobe illustrator进行渲染

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值