2016-04-07 6 views
3

これは「重複」の質問(Remove the x-axis ticks while keeping the grids (matplotlib))ですが、私が見つけた回答は問題を解決しませんでした。軸のチックを削除しますが、Matplolib/ggplotスタイルを使用してグリッドを保持します

このプロット生成
%matplotlib inline 

from matplotlib import pyplot as plt 
from matplotlib.lines import Line2D 

import bumpy 

data = numpy.random.randint(0, 100, size=(100,100)) 

plt.style.use('ggplot') 
plt.figure(figsize=(10,10)) 
plt.imshow(data) 

plt.savefig('myplot.pdf', format='pdf', bbox_inches='tight') 
plt.close() 

enter image description here

は、しかし、私はダニなしプロットで終わるしたい、ちょうどグリッドを

例えば、私はこのコードを持っています。その後、私はこれを試してみました:

plt.figure(figsize=(10,10)) 
plt.imshow(data) 
ax = plt.gca() 
ax.grid(True) 
ax.set_xticklabels([]) 
ax.set_yticklabels([]) 

私は近いが、私のPDFファイルを取得:これをしようとした場合、で最後

enter image description here

plt.figure(figsize=(10,10)) 
plt.imshow(data) 
plt.grid(True) 
plt.xticks([]) 
plt.yticks([]) 

WICHすべてのダニやグリッドを削除しますまだプロットの外にいくつかの目盛りがあります。内部のグリッドを維持しながら、どうやってそれらを取り除くのですか?

enter image description here

答えて

4
from matplotlib import pyplot as plt 
import numpy 

data = numpy.random.randint(0, 100, size=(100,100)) 

plt.style.use('ggplot') 
fig = plt.figure(figsize=(10,10)) 
ax = fig.add_subplot(111) 
plt.imshow(data) 
ax.grid(True) 
for axi in (ax.xaxis, ax.yaxis): 
    for tic in axi.get_major_ticks(): 
     tic.tick1On = tic.tick2On = False 
     tic.label1On = tic.label2On = False 

plt.show() 
plt.savefig('noticks.pdf', format='pdf', bbox_inches='tight') 
plt.close() 
4

あなたはダニの色を宣言することができます。

from matplotlib import pyplot as plt 
import numpy 

data = numpy.random.randint(0, 100, size=(100,100)) 

plt.style.use('ggplot') 
fig = plt.figure(figsize=(10,10)) 
ax = fig.add_subplot(111) 
ax.imshow(data) 
ax.tick_params(axis='x', colors=(0,0,0,0)) 
ax.tick_params(axis='y', colors=(0,0,0,0)) 
plt.show() 

、もたらす:

Transparent ticks

この場合、透明なもので
関連する問題